반응형
32비트 운영체제를 기준으로 C언어에서 정수형 char(1바이트), short(2바이트), int (4바이트), long(4바이트) 자료형이 있습니다. 그리고 이들의 차이는 바로 할당되는 메모리 크기였습니다. 메모리 크기는 데이터를 표현할 수 있는 범위와 관련이 됩니다. 다음 표는 정수형 자료형들의 데이터 표현 범위를 정리해 놓은 것입니다.
정수형 | 메모리 크기 | 데이터 표현 범위 |
char | 1바이트(8비트) | -128 ~ +127 |
short | 2바이트(16비트) | -32768 ~ +32767 |
int | 4바이트(32비트) | -2147483648 ~ +2147483647 |
long | 4바이트(32비트) | -2147483648 ~ +2147483647 |
먼저 앞의 표를 통해 최소값(MIN)과 최대값(MAX)을 보는 방법을 알아봅시다. 정수형 데이터의 표현 범위는 0을 기준으로 음수 ~ 양수의 범위를 가지고 있습니다. 따라서 최소값(MIN)은 음수, 최대값(MAX)는 양수가 됩니다. 여기까지 이해가 되었다면 궁금증이 생길 수 있습니다. 데이터의 표현 범위는 어떻게 산출되었을까? 아래는 데이터의 표현 범위를 구하는 공식입니다.
n에 정수형의 비트 수를 대입하여 계산하면 데이터의 표현 범위가 앞의 표처럼 얻어집니다.
- char 형 : -28-1 ~ 28-1-1 → -27 ~ -27-1 → -128 ~ +127
- short 형 : -216-1 ~ 216-1-1 → -215 ~ -215-1 → -32768 ~ +32767
- int 형 : -232-1 ~ 232-1-1 → -231 ~ -231-1 → -2147483648 ~ +2147483647
- long 형 : -232-1 ~ 232-1-1 → -231 ~ -231-1 → -2147483648 ~ +2147483647
반응형
'프로그래밍언어 > C언어' 카테고리의 다른 글
자료형이란 무엇인가 - unsigned 자료형 (0) | 2021.10.15 |
---|---|
자료형이란 무엇인가 - 시스템 라이브러리 (0) | 2021.10.13 |
자료형이란 무엇인가 - sizeof 연산자로 자료형의 크기를 구한다 (0) | 2021.10.06 |
자료형이란 무엇인가? - 자료형의 의미와 종류 (0) | 2021.10.05 |
연산자 우선순위 (0) | 2021.10.01 |
댓글