UE5 강의 11 - C++ 기초 문법 개론 1
이 글은 UnrealEngine5 Class 시리즈의 8번째 기록입니다. (총 10개)
오늘 한 일
- C++ 기초 문법 개론
-
비주얼스튜디오2022 설치

-
[실습] Hello World
#include <iostream> void main() { std::cout << "Hello World"; }
-
변수, 자료형
Data Type Size(Byte) Range int 4 -2,147,483,648 ~ 2,147,483,647 unsigned int 4 0 ~ 4,294,967,295 bool 1 false / true char 1 -128 ~ 127, ANSI 문자 short 2 -32,768 ~ 32,767 unsigned short 2 0 ~ 65,535 long 4 -2,147,483,648 ~ 2,147,483,647 unsigned long 4 0 ~ 4,294,967,295 long long 8 -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 unsigned long long 8 0 ~ 18,446,744,073,709,551,615 float 4 -3.4 * 10^38 ~ 3.4 * 10^38 double 8 -1.7 * 10^308 ~ 1.7 * 10^308 -
산술연산자(+, -, *, /, %)
-
[실습] CheckPoint1
/* CheckPoint1 5423 숫자가 있다. 각 자리의 숫자를 출력하라 결과값 */ 3 2 4 5 시작값: 5423#include <iostream> void main() { int num = 5423; int result = 0; int cacheNum = 0; cacheNum = num; result = cacheNum % 10; std::cout << result << std:: endl; cacheNum = cacheNum / 10; result = cacheNum % 10; std::cout << result << std:: endl; cacheNum = cacheNum / 10; result = cacheNum % 10; std::cout << result << std:: endl; cacheNum = cacheNum / 10; result = cacheNum % 10; std::cout << result << std:: endl; cacheNum = cacheNum / 10; std::cout << "시작값: " << num; }
-
비교문(분기문):
if, else, ==, <=, >=, !=, <, >, &&, ||, switch -
[실습] CheckPoint 2
// 정답: 56 "숫자를 입력하세요(1 ~ 99): " //TODO: 1 ~ 99의 숫자가 아닌 경우 에러 출력(1 ~ 99에 숫자를 입력하세요!!) "입력오류 > 1 ~ 99에 숫자를 입력하세요!!" "정답보다 입력값이 커요" "정답보다 입력값이 작아요" "정답입니다."#include <iostream> void main() { int num = 56; int inputNum = 0; while (true) { std::cout << "숫자를 입력하세요(1~99): "; std::cin >> inputNum; if (inputNum < 1 || inputNum >99) { std::cout << "1~99사이의 숫자를 입력하세요!!" << std::endl; } if (inputNum < num) { std::cout << "정답보다 입력값이 작아요" << std::endl; } else if (inputNum > num) { std::cout << "정답보다 입력값이 커요" << std::endl; } else { std::cout << "정답입니다." << std::endl; break; } } }
-
어려웠던 점
- C++이 처음이라 언어 자체에 적응하는게 어려웠다.
배운 점
- Window에서 int와 long은 둘 다 4 byte이기 때문에 range가 같다. 그러나 Linux / macOS 등에서는 long이 8 byte라서
short ≤ int ≤ long ≤ long long이다. 그래서 OS마다 크기가 달라지면 버그가 발생될 수 있어서 int32(4 byte), int64(8 byte)를 사용한다. - 문자열
char a = 'h'; // (O) 한 글자는 홑따옴표
string b = "hello"; // (O) 여러 글자는 쌍따옴표
char c = "h"; // (X)
char d = 'hello'; // (X)
해야 할 일
- C++ 복습
Series: UnrealEngine5 Class
1 | UE5 강의 1 - OT 2 | UE5 강의 2 - 변수, 연산자, 분기문(비교), 반복문 3 | UE5 강의 3 - 반복문(중첩, break), 함수, 배열, 블루프린트 클래스 4 | UE5 강의 4 - 오브젝트(액터)간 통신 방법 4가지 5 | UE5 강의 5 - GUI(UMG) 6 | UE5 강의 6 - UMG 7 | UE5 강의 7 - UMG, 카메라 8 | UE5 강의 11 - C++ 기초 문법 개론 1 읽는 중 9 | UE5 강의 12 - C++ 기초 문법 개론 2 10 | UE5 강의 13 - C++ 기초 문법 개론 3