본문 바로가기

old drawer/C, C++, MFC

[C++] 자료형 크기

변수형에 대해 고민하다가 싹 조사하게 되었다.

엑셀 파일과 소스코드를 첨부했으니 필요하신분은 얼마든지 사용해주셔도...ㄷㄷㄷ


옛날부터 프로그래밍을 배운게 아니라 요즘들어 하고있는 나에게

다양한 변수명은 상당히 혼란스럽고 골칫덩이였다.

특히나 int와 long가 완전히 똑같으리라고는 상상도 하지 못했는데...끙...





실제 출력값



타입

크기

최소

최대

define

비고

약수

SHORT

2

-32,768

32,767

short

32767

USHORT

2

0

65,535

unsigned short

65535

INT

4

-2,147,483,648

2,147,683,647

int

21

INT8

1

-128

127

signed char

SHORT 보다 작음

127

INT16

2

-32,768

32,767

signed short

3 2

INT32

4

-2,147,483,648

2,147,483,647

signed int

INT와 동일

21

INT64

8

-9,223,372,036,854,770,000

9,223,372,036,854,770,000

signed __int64

엑셀에서 숫자 잘림(5808, 5807)

9 2십경

UINT

4

0

4,294,967,295

unsigned int

42

UINT8

1

0

255

unsigned char

255

UINT16

2

0

65,535

unsigned short

65535

UINT32

4

0

4,294,967,295

unsigned int

UINT와 동일

42

UINT64

8

0

18,446,744,073,709,500,000

unsigned __int64

엑셀에서 숫자 잘림 (51615)

1 8백경

LONG

4

2,147,483,648

2,147,483,647

long

21

LONG32

4

-2,147,483,648

2,147,483,647

signed int

LONG과 동일

21

LONG64

8

-9,223,372,036,854,770,000

9,223,372,036,854,770,000

__int64

INT64와 동일 / 엑셀에서 숫자 잘림(5808, 5807)

9 2십경

ULONG32

4

0

4,294,967,295

unsigned int

42

ULONG64

8

0

18,446,744,073,709,500,000

unsigned __int64

UINT64와 동일 / 엑셀에서 숫자 잘림(51615)

1 8백경

bool

1

0

1

1

BOOL

4

-2,147,483,648

2,147,683,647

int

int와 동일

21

BYTE

1

unsigned char

1

CHAR

1

128

127

char

127

UCHAR

1

0

255

unsigned char

255

WCHAR

2

0

65,535

wchar_t

65535

WORD

2

0

65,535

unsigned short

65535

DWORD

4

0

4,294,967,295

unsigned long

42

DWORD32

4

0

4,294,967,295

unsigned int

DWORD와 동일

42

DWORD64

8

0

18,446,744,073,709,500,000

unsigned __int64

QWORD와 동일 / 엑셀에서 숫자 잘림 (51615)

1 8백경

QWORD

8

0

18,446,744,073,709,500,000

unsigned __int64

1 8백경

FLOAT

4

1.17549E-38

3.40282E+38

유효 자리수 : 6자리

DOUBLE

8

0

1.7977E+308

유효 자리수 : 15자리 / 엑셀에서 MIN 표시 불가