Computer >> 컴퓨터 >  >> 프로그래밍 >> C 프로그래밍

C 언어에서 8진수 리터럴 표현하기

C/C++에서는 실제 숫자 앞에 0을 붙이는 것만으로 8진수(octal) 리터럴을 표현할 수 있습니다. 예를 들어, 8진수 25를 나타내고 싶다면 025처럼 작성하면 됩니다.

8진수의 기본 개념

8진수는 각 자릿수가 8의 거듭제곱을 나타내는 진법입니다. 따라서 8진수 025는 10진수로 2×8 + 5 = 21이 되고, 8진수 0636×8 + 3 = 51이 됩니다.

예제 코드

#include <stdio.h>
int main() {
    int a = 025;
    int b = 063;
    printf("Decimal of 25(Octal) is %d\n", a);
    printf("Decimal of 63(Octal) is %d\n", b);
}

실행 결과

Decimal of 25(Octal) is 21
Decimal of 63(Octal) is 51

주의할 점

숫자 앞에 0을 붙이면 의도하지 않게 8진수로 해석될 수 있으므로 주의해야 합니다. 예를 들어 010은 10진수 10이 아니라 10진수 8로 처리됩니다. 또한 8진수에는 0부터 7까지만 사용할 수 있으며, 8이나 9를 포함하면 컴파일 오류가 발생합니다.