프로그래밍/C

C언어 실수형 상수

꿈꾸는 사람_Anthony 2021. 4. 5. 21:17
반응형
  • 상수 뒤에 아무것도 안붙음
    • double형으로 인식
  • 상수 뒤에 f나 F가 붙음
    • float형으로 인식
  • 상수 뒤에 l이나 L이 붙음
    • long double로 인식

ISO/IEC 9899:1999 (open-std.org)(참고 링크)의 6.4.4.2.4
실수형 변수 출력 - 한 눈에 끝내는 C언어 기초 (goorm.io)

scanf()함수에서만 wrong format경고(warning)이 떴다.

하지만 float에 double형 상수를 넣어준 경우 또한 잘못된 값이 들어있음을 알 수 있다.

 

하나 더 신기한 것은, 실행할 때마다 다른 값이 들어있다는 것이다.

stdin에 넣어주는(scanf()로) 값에 따라서 f1뿐 아니라, f에 들어있는 값 또한 변하였다.

stdin에 넣어주는 값이 동일하면 그 결과도 동일했다.

 

 

<참고>

실수형 변수 출력 - 한 눈에 끝내는 C언어 기초 (goorm.io)

ISO/IEC 9899:1999 (open-std.org)

반응형