C++의 기본 자료형은 정수, 부동 소수점, void의 세 가지 범위로 나누어집니다.
- void : 비어있는 값으로 값을 리턴하지 않는 함수나 특정 형식이 정해지지 않은 데이터를 선언할 때 포인터로 활용됩니다.
- https://msdn.microsoft.com/ko-kr/library/cc953fe1.aspx
자료형에 대한 크기를 잘 알아둬야 프로그래밍시 공간의 낭비가 없을 것입니다.
아래 표의 내용들은 MS자료를 바탕으로 작성되었기 때문에 VC++외 gcc 계열이나 다른 c계열에서는 크기가 다를 수도 있습니다.
종류 | 자료형 | 크기 | 범위 | 내용 |
정수계열 | Char | 1BYTE | -128 ~ 127 | 문자열을 표현, ASCII |
unsigned char | 1BYTE | signed : -128 ~ 127 unsigned : 0 ~ 255 |
unsigned char는 부호 없는 char | |
bool | 1BYTE | 0 or 1 | TRUE or FALSE | |
short | 2BYTE | -32,768 ~ 32,767 |
char보다 크거나 int보다 짧거나 같은 형식 | |
unsigned short | 2BYTE | 0 ~ 65,535 |
부호 없는 short | |
int | 4BYTE | -2,147,438,648 ~ 2,147,438,648 |
short보다 크고 long보다 작은 형식 | |
intn (8, 16, 32, 64, 128) |
n/8BYTE | n에 따라 다름 | 크기가 지정된 정수 n은 변수의 크기 (intn은 MS 전용) |
|
long | 4BYTE | -2,147,438,648 ~ 2,147,438,647 |
int보다 크거나 int와 같은 형식 | |
unsigned long | 4BYTE | 0 ~ 4,294,877,296 |
부호 없는 long | |
long long | 8BYTE | -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 |
unsigned long보다 큰 형식 (int64) |
|
unsigned long long | 8BYTE | 0 ~ 18,446,744,073,709,551,615 |
부호 없는 long long (uint64) |
|
부동 소수점 | float | 4BYTE | 3.4E +/- 38 (7 digit) | 가장 작은 부동소수점 형식 |
double | 8BYTE | 1.7E +/- 308 (15 digit) | float보다 크고 long double과는 짧거나 같은 형식 | |
long double | 8BYTE | 1.2E +/- 4932 (19 digit) | double과 같은 형식 (표현은 다름) | |
와이드 문자열 | _wchar_t | 2BYTE | -32,768 ~ 32,767 (char보다 큼) |
와이드나 멀티바이트 형식을 지정 |
'Programming Language > C, C++' 카테고리의 다른 글
네임드 파이프 예제 (0) | 2016.04.30 |
---|---|
StrSafe 함수들 (0) | 2015.09.19 |
C 데이터, 스택, 힙 영역 (0) | 2014.12.08 |
C++ Volatile 키워드 (0) | 2014.11.15 |
C++ 포인터와 레퍼런스의 차이 (0) | 2014.11.12 |