리터럴 (문자 그대로의)
= 값을 직접 입력한 것
리터럴 접두어 입력
int num0 = 11; #10진수 : 10
int num1 = 011; #8진수 : 9
int num2 = 0b11;#2진수(b = binary) : 3
int num3 = 0x11 #16진수(x = hex) : 17
데이터 모델에 따른 int의 사이즈
- 데이터 모델 : 자료형들의 사이즈 세트
Data Model | integer size/long size/pointer size | Application | |
32 bit systems | LP32 | 2 / 4 / 4 | Win16 API |
ILP32 | 4 / 4 / 4 | Win32 API Unix and Unix-like systems (Linux, Max OS X) |
|
64 bit systems | LLP64 | 4 / 4 / 8 | Win64 API |
LP64 | 4 / 8 / 8 | Unix and Unix-like systems (Linux, Max OS X) |
- 암호화처럼 자료형 size가 중요한 코드에서는 int8_t, int16_t, int32_t같은 fixed integer를 이용해야 함
- unsigned int 같은 경우 형태가 완전하지 않은 경우 내부적으로 타입 변환이 일어날 수 있다 > 따라서 확실하게 unsigned literal을 나타내기 위해 접미사 u를 사용해줌
- long int = 접미사 L / long long = 접미사 LL / unsigned long long = uLL,LLu
Binary(이진법)
2의 제곱수는 첫자리 1이고 나머지는 전부 0 (10진수도 마찬가지)