언어/C언어
[c언어 기초] - 자료형
Source
2020. 3. 3. 13:39
상수 변수
초깃값을 변경할 수 없는 변수를 상수 변수라고 한다.(줄여서 상수)
const int MAX_SIZE = 10;
와 같이 사용한다.
자료형
정수
- char - 1byte
- short - 2byte
- int - 4byte
- long 4byte
실수
- float - 4byte
- double - 8byte
int 의 범위가 약 21억~21억 인이유
int 의 크기는 4byte로 32bit 이다.
한 비트당 1 또는 0의 상태를 가지므로 총 2^32(4294967296) 가지의 숫자를 표현할수 있는데 맨 앞자리 비트는 부호를 의미하기 때문에 양수 음수 각각 2^31인 2147483648까지 표현이 가능한데 실제 표현 가능 범위는
-2147483648 ~ 2147483647 이다.
마지막 1의자리수가 다른 이유는 2147483648가지 표현중에 0을 양수로 포함하기 때문에 양수쪽에서 숫자하나가 빠진것이다.
따라서 다음과 같이 unsigned로 선언하게 되면 부호를 결정하는 비트까지 포함해서 수를 저장하기 때문에 음수범위가 사라진
0 ~ 4294967295 까지 표현이 가능하다.
unsigned int n = 4294967295;
long long
int의 최대 범위가 약-21억 ~ 21억이고 unsigned int를 사용한다고 해도 최대 약42억이다. 그렇다면 그보다 큰수는 어떻게 저장할수있을까.
long long 이라는 자료형은 8byte로 총 64bit를 할당할수 있다.
따라서 -9223372036854775808 ~ 9223372036854775807 까지 표현이 가능하다.
(약 -922경~922경)
unsigned long long 도 마찬가지로
0 ~ 18446744073709551615 까지 표현이 가능하다.
(약 1844경)