Javascript PHP Python Ruby

숫자 앞의 접두어 0x, 0o, 0b의 의미는 무엇일까?

프로그래밍 소스코드에서는 종종 숫자 앞에 접두어 0x, 0o, 0b가 붙는 경우가 있습니다. 이 접두어는 이어지는 숫자가 각각 16진수, 8진수, 2진수임을 의미합니다. 실제 소스코드에서는 아래와 같이 등장하는데, Python, Ruby, Javascript 등의 언어에서 모두 같은 형태를 가집니다.

# Python, Ruby, Javascript
a = 0b1011;   # 10진수 11
b = 0o17;     # 10진수 15
c = 0x1D;     # 10진수 29

이렇게 입력한 숫자의 자료형은 모두 정수형(Integer)입니다. 실제로 값을 사용할 때는 10진수로 바뀌어 있다고 가정하고 사용하면 됩니다. 예컨데 위 소스코드의 a, b, c 변수를 모두 더하여 출력하면, 11+15+29=55가 출력될 것입니다.

8진수의 접두어는 언어에 따라 차이가 있는 경우도 있습니다. C언어와 Java, PHP에서는 2진수와 16진수의 접두어는 같지만, 8진수의 접두어는 0만 붙여서 사용합니다.

// C, Java
int a = 0b1011;
int b = 017;
int c = 0x1D;
# PHP
$a = 0b1011;
$b = 017;
$c = 0x1D;

2 thoughts on “숫자 앞의 접두어 0x, 0o, 0b의 의미는 무엇일까?”

  1. 프로그래밍 소스코드에서는 종종 숫자 앞에 접두어 0x, 0o, 0b가 붙는 경우가 있습니다. 이 접두어는 이어지는 숫자가 각각 2진수, 8진수, 16진수임을 의미합니다.
    ——
    설명에서 0x와 0b가 바뀐것 같습니다.

    1. 한태웅님 안녕하세요. 내용을 수정하였습니다. 알려주셔서 감사합니다.

Leave a Reply

Your email address will not be published. Required fields are marked *