인프런 커뮤니티 질문&답변

dudejr9614님의 프로필 이미지
dudejr9614

작성한 질문수

홍정모의 따라하며 배우는 C언어

3.7 강의 질문입니다.

작성

·

178

0

다른 출력값들은 정확히 출력이 되는데

printf("short = %hhd, %hd, %d\n", s, s, s);

short  %hhd에도  200  이 나오는게 궁금합니다.

온라인 컴파일러에는 값이 이상없이 나옵니다. gcc컴파일러 문제일까요?

구글링을 해보니  %hhd 는 1바이트 정수를 받는 서식지정자이고  short는 2바이트이니 값이 다르게 나와야 되는게 맞는거죠?

제가 어디서 부터 잘 못 했는지 잘 모르겠습니다.. 

항상 질문 답변 해주셔서 감사합니다.

답변 1

1

안녕하세요?
따로 명시되지 않은 것은 컴파일러마다 다르게 나타날 수 있습니다.
코드 상으로는 overflow 를 유도하신 것이니 이해하신 것은 맞습니다.

dudejr9614님의 프로필 이미지
dudejr9614

작성한 질문수

질문하기