흔히 알고 있는 16진수의 표현 방법은 이렇다.
0x01, 0x0001
간단한 예를 만들어 보자면...
#include <stdio.h>int main()%%%{ int jinsu16; jinsu16 = 0x01; printf("jinsu16 is %d", jinsu16); return 0;}
여기서...아래의 문구를 추가해주면...
int jinsu8;jinsu8 = 080;
printf("jinsu8 is %d", jinsu8);...에러가 난다.
이유는 이렇다.
"0x~"는 16진수를 나타내지만 "0~"는 8진수를 나타내기 때문...
그렇기 때문에 2진수에 2가 없고, 3진수에 3이라는 숫자가 없듯이...8진수에 8이 들어갈 수 없는 것이다.