분류 전체보기
[2] 최댓값과 최솟값
#include #include #include using namespace std; string solution(string s) { vector v; string temp = ""; for (int i = 0; i < s.size(); i++) { if (s[i] == ' ') { v.push_back(stoi(temp)); temp = ""; } else temp += s[i]; } v.push_back(stoi(temp)); sort(v.begin(), v.end()); return to_string(v.front()) + ' ' + to_string(v.back()); }
void* 포인터 크기
각 시스템마다 차이가 있다. 16비트 - 2 바이트 32비트 - 4 바이트 64비트 - 8 바이트 #include int main() { void *ptr; printf("The size of pointer value : %d", sizeof(ptr)); return 0; } 또는 #include using namespace std; int main() { cout
[Unity] 애니메이션 내 추가 버튼이 비활성화인 이유
Add Property가 비활성화 되있는데 이는 대상 오브젝트를 선택 안했기 때문이다. 클릭하면 활성화 되는 모습
[Unity] 타일맵에 콜라이더(충돌체) 추가하기
플랫폼 게임을 만드는데 노란 공이 떨어져서 바닥에 닿으면 튕기게 만들고 싶다고 가정해보자. 노란 공에 물리효과를 주기 위해서 Circle Collider 2D 컴포넌트와 Rigidbody 2D 컴포넌트를 부착해주었다. 그리고 꽤 그럴듯하게 공처럼 튀기게 만들기 위해서 물리 머티리얼(Physics Material)까지 넣어주었다. 하지만 타일맵에 물리적인 컴포넌트가 아무것도 없는 상태이기 때문에 플레이를 시작하면 떨어지는 공은 타일맵을 그냥 통과해버린다. 타일맵 콜라이더 2D 컴포넌트(Tilemap Collider 2D Component) 이전 섹션을 진행해왔다면 하이어라키 뷰에 존재하는 타일맵은 게임 오브젝트하나로 존재하기 때문에 어떻게 콜라이더를 배치해야할지 난감할 수도 있다. 타일맵을 위한 콜라이더를..
[Unity] 2D 게임의 기본 타일맵!
예전에 RPG메이커를 사용했을 때는 맵이 타일(Tile) 방식으로 이루어져 있어서 타일 팔레트를 가져와서 마치 그림 그리듯이 원하는 타일을 칠해주는 방식으로 맵을 만들 수 있었다. 유니티 엔진을 처음 배웠던 5 버전에서는 이러한 기능이 없어서 2D 맵 오브젝트를 직접 배치하거나 타일맵 기능을 직접 구현해야만 했었다. 하지만 유니티 2017.2 버전에서부터 타일맵 기능이 유니티에도 추가되었다. 맵오브젝트를 배치할 필요없이 그림 그리듯이 맵을 만들 수 있다는 것은 굉장한 장점이다. 샘플용 간단한 타일맵 이미지를 다운받은 뒤, 타일맵의 사용법에 대해서 알아보자. 구글에서 적당한 리소스를 다운받아서 사용해도 좋다. 타일 팔레트(Tile Palette) 만들기 타일맵을 씬에 배치하기 이전에 먼저 타일맵을 색칠할 ..
[Unity] (Rule Tile)룰 타일로 타일맵 자동 연결하기
타일의 자동 연결은 어떻게? 같은 타일을 놓으면 오른쪽 십자가처럼 자동으로 연결되기를 바랄 수 있다. 하지만 유니티 타일맵 기본 기능 만으로는 같은 타일을 옆에 놓아봤자 왼쪽 십자가처럼 끊어진 십자가만 놓아지고 오른쪽 십자가처럼 만들려면 직접 일일이 배치를 해야한다. 유니티 2D 엑스트라(Unity 2D Extra) 타일을 자동으로 연결해주는 기능은 기본 타일맵에서는 제공하지 않고, 유니티 테크놀러지에서 만들어서 깃허브에 올려둔 별도의 기능인 2D 엑스트라를 임포트해서 사용해야 한다(링크에서 2D Extra를 다운로드 받으면 된다). 그리고 다운로드 받은 파일의 압축을 풀고 2d-extra-master 폴더를 프로젝트 뷰의 Assets 폴더 안에 넣어주면 된다. 룰 타일(Rule Tile) 유니티에서 같..
[C++] string(문자열) 클래스 변환(atoi, c_str()) 등 정리
1) 함수 설명 int atoi(const char* str) 헤더파일(C) : 헤더파일(CPP) : 설명 : C style의 문자열을 입력받아서 int (숫자) 타입으로 변환하여 리턴한다. std::string c_str() 반환형이 char * 이므로, 해당하는 string의 첫번재 문자의 주소값(포인터)를 반환한다. 예제 헤더파일 : , , 이름공간 : using namespace std; char* > string char * cStr = "Cstring"; string cppStr = cStr; cout
[C/C++] atoi, atof, atol 함수 (char* to int), 문자열 > 값 타입
1. atoi, atof, atol 함수 이름의 기원 atoi 함수를 살펴보면 a - to - i 이렇게 나눌 수 있다. a = char(ASCII), i = int 로 보면 char(ASCII) to integer 라는 이름으로 풀 수 있다. 즉. char 타입을 int 타입으로 변경한다. atoi = char to int = 문자열을 정수 타입으로 atof = char to double = 문자열을 실수 타입으로 atol = char to long int = 문자열을 long 정수 타입으로 중요한것은 여기서 char는 char[N], char* 로 표현이 되는 문자열을 말한다. C++ 에서는 string 클래스에 의해서 문자열을 string으로 표현할 수 있는데, C언어에서는 string 클래스가 존..
[C++] stoi, stof, stol, stod 함수에 대해서 (string to int), 문자열 > 특정 타입
1. C++에서 string 타입의 문자열을 숫자로 바꾸는 함수들의 이름. ▼ C++11 부터 아래 함수들을 사용할 수 있다. stoi = string to int stof = string to float stol = string to long stod = string to double stoul = string to unsigned int stoll = string to long long stoull = string to unsigned long long stold = string to long double 2. C++ stoi, stof, stol, stod 함수 원형과 매개변수가 뜻하는 것 ▼ 함수 원형 1) 정수형 int stoi(const string& str, size_t* idx = 0, i..
[C++] to_string 함수에 대해서, 특정 타입 > 문자열
1. std::to_string 함수 원형과 함수 설명 ▼ std::to_string 헤더파일 ▼ std::to_string 함수 원형 string to_string (int num); string to_string (long num); string to_string (long long num); string to_string (unsigned num); string to_string (unsigned long num); string to_string (unsigned long long num); string to_string (float num); string to_string (double num); string to_string (long double num); ▼ std::to_string 함수 ..