Unreal Engine

UE5 강의 11 - C++ 기초 문법 개론 1 [2026.03.14.]

_김로그 2026. 3. 28. 20:36
반응형

오늘 한 일

  1. C++ 기초 문법 개론
    1. 비주얼스튜디오2022 설치


    2. [실습] Hello World
      #include <iostream>
      
      void main()
      {
      	std::cout << "Hello World";
      }

    3. 변수, 자료형
      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
    4. 산술연산자(+, -, *, /, %)
    5. [실습] 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;
      }



    6. 비교문(분기문): if, else, ==, <=, >=, !=, <, >, &&, ||, switch
    7. [실습] 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;
      		}
      	}
      }

어려웠던 점

  1. C++이 처음이라 언어 자체에 적응하는게 어려웠다.

배운 점

  1. Window에서 int와 long은 둘 다 4 byte이기 때문에 range가 같다. 그러나 Linux / macOS 등에서는 long이 8 byte라서 `short ≤ int ≤ long ≤ long long` 이다. 그래서 OS마다 크기가 달라지면 버그가 발생될 수 있어서 int32(4 byte), int64(8 byte)를 사용한다.
  2. 문자열
char a = 'h';        // (O) 한 글자는 홑따옴표
string b = "hello";  // (O) 여러 글자는 쌍따옴표

char c = "h";        // (X) 
char d = 'hello';    // (X)

 


해야 할 일

1. C++ 복습

반응형