목록언리얼 개발자/C++ (13)
연습장
주제: 비교 연산과 논리 연산 비교연산이 언제 필요한가? 체력이 0이 되면 사망한다, 체력이 30% 이하이면 궁극기를 발동한다. (100*hp/maxHp), 경험치가 100 이상이면 레벨업을 한다. 비교 연산 a == b a와 b의 값이 같은가? 같으면 1, 다르면 0 a != b a와 b의 값이 다른가? 다르면1, 같으면 0 a > b a가 b보다 큰가? a > = b a가 b보다 크거나 같은가? a < b a가 b보다 작은가? a b); isSmaller = (a < b); } 논리연산이 언제 필요한가? 조건에 대한 논리적 사고가 필요할 때, 하나의 정보가 아닌 여러 정보를 조합하여 최종 판단을 해야하는 상황일 때 로그인할 때 아이디도 같고 And 비밀번호도 같아야 한다. ( 두가지 조건을 동시에 만..
주제: 데이터 연산 / 데이터를 가공하는 방법에 대해 알아보자. int a = 1; : 1이라는 데이터를 a라는 바구니(메모리)에 할당한다. int b = 2; : 2라는 데이터를 a라는 바구니(메모리)에 할당한다. 산술연산자 대입연산 a = b; : a에 b를 대입하고 b를 반환하라. (b라는 바구니 안에 있는 값을 a라는 바구니 안에 복사한다. 사칙연산 a = b + 3 덧셈 add a = b - 3 뺄셈 sub a = b * 3 곱셈 mul a = b / 3 나눗셈 div a = b % 3 나눗셈(나머지) div 사칙연산이 필요할 때: 데미지를 계산할 때, 체력을 깎을 때, 루프문에서 카운터를 1증가 시킬 때 등 a += 3 a = a + 3 a -= 3 a = a - 3 a *=3 a = a * ..
주제: 문자와 문자열 bool은 그냥 정수지만, 참/거짓을 나타내기 위해 사용한다 했었다. 사실 char도 마찬가지이다. 그냥 정수지만 '문자'의 의미를 나타내기 위해 사용한다. char : 알파벳, 숫자, 문자를 나타낸다. wchar_t : 유니코드 문자를 나타낸다. (_t == _type의 약자) ASCII코드 (정보교환을 위한 미국표준 코드) : '문자'의 의미로 작은 따옴표 ' '를 사용한다. #include using namespace std; char ch1 = 97; char ch2 = 'a'; char ch3 = '1'; char ch4 = 'a'+1; int main(){ cout
주제: 불리언(bool)과 실수 불리언(boolean)은 참과 거짓 두가지만 갖고 있는 형식이다. bool isHighLevel = true; //고렙이 맞는지 bool isPlayer = true; //유저가 맞는지 bool isMale = false; //캐릭터가 남자가 맞는지 불리언은 그냥 1바이트 정수에 불과하다. true는 0, false는 1의 값을 가지고 있다. 그렇다면, 왜 정수 시간에 불리언을 다루지 않았을까? => 어셈블리에서 불리언이라는 것은 없음 불리언만 봐도 참/거짓 둘 중 하나라는 힌트를 준다(가독성) int main(){ // 아래처럼 표현해도 되지만 // 여성 갯수? 뭔 말이지? 하는 상황이 올수도 있음 if(isFemale != 1) { //TODO } } int main(..
주제: 정수 주석처리: Comment (Ctrl + K 누른 후 C) / UnComment(Ctrl + K 누른 후 U) ① //이렇게 주석을 달 수 있다. ② /*주석이 여러줄이면 이렇게 달 수 있다. */ 변수 선언 방법 (귀찮지만 적절하게 잘 골라줘야 함) ① [타입][이름]; ② [타입][이름] = [초기값]; char형 1바이트 (-128~127) short형 2바이트 (-32,768~32,767) int형 4바이트 (-21.4억~21.4억) __int64형 / long long형 8바이트 (어마어마하게 큼) signed / unsigned 변수 앞에는 항상 signed가 생략되어 있다. unsigned char형 1바이트 (0~255) unsigned short형 2바이트 (0~65,536) ..