>백엔드 개발 >C++ >선행 0은 C/C의 숫자 상수에 어떤 영향을 미칩니까?

선행 0은 C/C의 숫자 상수에 어떤 영향을 미칩니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-16 11:43:03340검색

How do Leading Zeros Affect Numeric Constants in C/C  ?

C/C에서 앞에 0이 붙는 숫자 상수

C나 C에서 숫자 상수 앞에 0이 붙는 경우('0' ), 이는 8진수(8진수)를 나타냅니다. 이 접두사는 특정 구문(예: 0b 및 0x 접두사)을 사용하는 이진수 또는 16진수 상수에는 적용되지 않습니다.

제공된 예에서 숫자 상수 0123은 8진수로 해석됩니다. 8진수에서 각 숫자는 8의 거듭제곱을 나타냅니다. 숫자는 각 숫자에 해당하는 8의 거듭제곱을 곱하고 결과를 합산하여 10진수로 변환할 수 있습니다.

0 * 8^3 = 0
1 * 8^2 = 64
2 * 8^1 = 16
3 * 8^0 = 3

이 값을 더하면 다음과 같은 10진수 결과가 나옵니다. 83.

이 동작은 C 및 C 표준에 의해 정의되며 특정 컴파일러에만 국한되지 않습니다. 8진수 접두어를 사용하면 프로그래머는 역사적 맥락이나 하드웨어 관련 애플리케이션에서 자주 사용되는 8진 표기법을 사용하여 숫자를 표현할 수 있습니다.

위 내용은 선행 0은 C/C의 숫자 상수에 어떤 영향을 미칩니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.