> 백엔드 개발 > C++ > C\의 형식화된 입력/출력에서 `%i`와 `%d`의 주요 차이점은 무엇입니까?

C\의 형식화된 입력/출력에서 `%i`와 `%d`의 주요 차이점은 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2024-11-28 15:23:10
원래의
762명이 탐색했습니다.

What's the Key Difference Between `%i` and `%d` in C's Formatted Input/Output?

포맷된 IO 함수에서 변환 지정자 %i와 %d의 차이점

printf 및 scanf와 같은 포맷된 IO 함수에서 변환 지정자 입력 및 출력 데이터의 해석 및 형식을 제어하는 ​​데 사용됩니다. 다양한 지정자 중에서 %i와 %d는 정수에 자주 사용됩니다.

출력:

출력에 사용되는 경우(예: printf), %i 및 %d개는 동일하게 동작합니다. 둘 다 정수 값을 나타내며 시스템 로케일에 따라 기본 형식으로 인쇄합니다.

입력:

그러나 %i와 %d의 구별이 나타납니다. 입력 작업 중(예: scanf 사용) 여기서는 동작이 다릅니다.

  • %d: 정수를 기본 산술 표기법으로 표현되는 부호 있는 십진수로 스캔합니다.
  • % i: 기본적으로 정수를 부호 있는 10진수로 스캔하지만 다음과 같은 경우 16진수 및 8진수 표현도 허용합니다. 적절하게 접두사가 붙습니다. 16진수는 "0x"(예: "0x20")로 시작하고, 8진수는 "0"(예: "025")으로 시작합니다.

따라서 " 033", scanf("%d")는 이를 33(부호 있는 십진수)으로 해석하고, scanf("%i")는 이를 해석합니다. 27(8진수)로 표현의 차이를 나타냅니다.

위 내용은 C\의 형식화된 입력/출력에서 `%i`와 `%d`의 주요 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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