C++ 개념 정리

24. 정수

CE : 하랑 2026. 2. 1. 17:46

 

정리

int8 - 정수를 표현하는데 8개의 bit를 사용해서 127 ~ -128 까지의 숫자를 표현할 수 있고
int16 - 32,767 ~ -32,767 까지 표현할 수 있다.
int32 - 214,648,647 부터 -214,648,647 까지 표현하고,
int64 - 무려 9,223,372,036,854,775,807 부터 -9,223,372,036,854,775,807 까지 표현할 수 있다.

 

 

int vs __int64 

 


만약, 음수를 표현 할 필요가 없다면 타입이름 앞에 u를 붙여 uint8, uint16, uint32, uint64로 사용할 수 있고, 각 수가 표현 가능한 최대수의 2배만큼 표현 범위가 넓어진다.

그렇다면, 왜 int64로 통일하여 프로그래밍을 하지 않는걸까?

그 이유는 모든 변수를 int64로 통일한다면, 최적화에 민감한 UE4에서의 성능 저하를 우려할수 있기때문이다.

그렇다면 각각의 변수의 타입을 맞춰 사용해야 하는데 그에 따른 부작용은 없을까!?

최적화에 성공하려면, 각각의 변수에 할당될 비트수를 예상 가능 범위만큼을 사용해야한다.
예를들어, int8을 사용할 것이라고 생각하고 int8을 사용했는데, 그 예상을 벗어나 127 + 1 = -128 이 되어버리거나 -128 에서 -1 을 했는데 127이 되어버리는 문제가 생긴다.

그렇기에, 그 범위를 넘어갈 가능성을 배제할 수 없다면, 예외처리를 통해 예방하는 방법을 사용해야한다.

 

'C++ 개념 정리' 카테고리의 다른 글

25. 비트 연산자  (0) 2026.02.08
34. C++ 곱셈 연산 나눗셈 연산 차이  (0) 2026.02.08
23. IOCP  (0) 2026.01.31
22. Thread  (0) 2026.01.31
21. class  (0) 2026.01.31