데이터 타입이란 데이터가 메모리에 어떻게 저장되고, 프로그램에 어떻게 처리되어야 하는지 명시적으로 알려주는 역할을 함.

C++에서는 여러 형태의 타입을 제공하고 있음, 이것을 기본 타입이라고 함.

기본 타입

정수형 타입

정수형 타입 할당되는 메모리의 크기 데이터의 표현 범위
(signed) short 2 바이트 -215 ~ (215 - 1)
unsigned short 2 바이트 0 ~ (216 - 1)
(signed) int 4 바이트 -231 ~ (231 - 1)
unsigned int 4 바이트 0 ~ (232 - 1)
(signed) long 4 바이트 -231 ~ (231 - 1)
unsigned long 4 바이트 0 ~ (232 - 1)
unsigned long long 8 바이트 0 ~ (264 - 1)

정수형 데이터의 타입을 결정할 떄에는 반드시 자신이 사용하고자 하는 데이터의 최대 크기를 고려해야함

타입이 표현할 수 있는 범위를 벗어난 데이터를 저장하면 오버플로우(overflow)가 발생해 전혀 다른 값이 저장됨

int num = 2147483647;

cout << "변수 num에 저장된 값은 " << num << "입니다." << endl;  

 

num = 2147483648;

cout << "변수 num에 저장된 값은 " << num << "입니다." << endl;

// 결과 
변수 num에 저장된 값은 2147483647입니다.

변수 num에 저장된 값은 -2147483648입니다.

실수형 타입

실수형 타입 할당되는 메모리의 크기 데이터의 표현 범위
float 4 바이트 (3.4 X 10-38) ~ (3.4 X 1038)
double 8 바이트 (1.7 X 10-308) ~ (1.7 X 10308)
long double double형과 동일함. double형과 동일함.