> 백엔드 개발 > C++ > 본문

0은 C의 8진수 또는 10진수 리터럴입니까?

Mary-Kate Olsen
풀어 주다: 2024-11-21 18:31:15
원래의
952명이 탐색했습니다.

Is 0 an Octal or Decimal Literal in C  ?

8진수 또는 10진수: C에서 0의 본질 공개

프로그래밍 영역에서는 리터럴 정수 표현이 중요합니다. 0이 항상 0이라는 것이 중요하지 않은 것처럼 보일 수도 있지만, 최근 토론에서 다음과 같은 질문이 촉발되었습니다. 0을 10진수 리터럴로 분류해야 할까요, 아니면 8진수 리터럴로 분류해야 할까요?

C 표준 공개

이 질문에 답하기 위해 우리는 C 언어 표준의 핵심을 탐구합니다. 섹션 2.14.2 [lex.icon]에 따르면 정수 리터럴은 구문에 따라 10진수, 8진수 또는 16진수로 분류될 수 있습니다.

구체적으로 표준에서는 8진수 리터럴을 다음과 같이 정의합니다.

octal-literal:
    0                           <-- Here
    octal-literal octal-digit
로그인 후 복사

평결: 8진수 또는 10진수?

이 정의는 0이 8진수 리터럴에 해당함을 명백히 명시합니다. 표준은 입장을 명확하게 밝혔습니다. 다른 접두사나 접미사가 없으면 0은 C에서 8진수 리터럴로 해석됩니다.

역사적 맥락

초기 컴퓨팅에서 8진수 리터럴의 보급은 8비트 아키텍처의 지배력에 영향을 받았습니다. 그러나 오늘날 32비트 및 64비트 아키텍처가 널리 채택되면서 10진수 리터럴이 훨씬 더 일반화되었습니다.

그럼에도 불구하고 표준이 8진수 리터럴을 인정한 것은 초기 컴퓨팅의 유산을 상기시키는 역할을 합니다. 이전 코드베이스와의 호환성을 제공합니다.

위 내용은 0은 C의 8진수 또는 10진수 리터럴입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿