IT/C and C++

8진수와16진수

KSI 2005. 7. 13. 06:54

흔히 알고 있는 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이 들어갈 수 없는 것이다.