자료형값의 |
크기 |
값의 표현 범위 |
|
정수형 |
char |
1 byte |
-128 ~ +127 |
short |
2 byte |
-32,768 ~ +32,767 |
|
int |
4 byte |
-2,147,483,648 ~ +2,147,483,647 |
|
long |
4 byte |
-2,147,483,648 ~ +2,147,483,647 |
|
long long |
8 byte |
-9,223,372,036,854,775,808 ~ +9,223,372,036,854,775,807 |
|
실수형 |
float |
4 byte |
±3.4e-37 ~ ±3.4e-38 |
double |
8 byte |
±1.7e-307 ~ ±1.7e-308 |
|
long double |
8 byte 이상 |
double 이상의 표현범위 |
위의 자료형은 signed 라는 키워드를 생략한 것으로 붙이나 안붙이나 의미는 똑같다.
정수 자료형에 한해서 unsigned 키워드를 사용할 수 있으며 붙여줄 경우는 다음과 같다.
부호를 나타내는 MSB를 값의 크기를 나타내는 비트로 사용하여 0이상의 범위가 2배 이상이 된다.
정수 자료형 |
크기 |
값의 표현범위 |
char |
1 byte |
-128 ~ +127 |
unsigned char |
0 ~ 128 + 127 |
|
short |
2 byte |
-32,768 ~ +32,767 |
unsigned short |
0 ~ 32,768 + 32,767 |
|
int |
4 byte |
-2,147,483,648 ~ +2,147,483,647 |
unsigned int |
0 ~ 2,147,483,648 + 2,147,483,647 |
|
long |
4 byte |
-2,147,483,648 ~ +2,147,483,647 |
unsigned long |
0 ~ 2,147,483,648 + 2,147,483,647 |
|
long long |
8 byte |
-9,223,372,036,854,775,808 ~ +9,223,372,036,854,775,807 |
unsigned long long |
0 ~ 9,223,372,036,854,775,808 + 9,223,372,036,854,775,807 |