-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
3.7 강의 질문입니다.
20.09.20 01:52 작성 조회수 130
0
다른 출력값들은 정확히 출력이 되는데
printf("short = %hhd, %hd, %d\n", s, s, s);
short %hhd에도 200 이 나오는게 궁금합니다.
온라인 컴파일러에는 값이 이상없이 나옵니다. gcc컴파일러 문제일까요?
구글링을 해보니 %hhd 는 1바이트 정수를 받는 서식지정자이고 short는 2바이트이니 값이 다르게 나와야 되는게 맞는거죠?
제가 어디서 부터 잘 못 했는지 잘 모르겠습니다..
항상 질문 답변 해주셔서 감사합니다.
답변을 작성해보세요.
1
Hello Yeo
2020.09.20
안녕하세요?
따로 명시되지 않은 것은 컴파일러마다 다르게 나타날 수 있습니다.
코드 상으로는 overflow 를 유도하신 것이니 이해하신 것은 맞습니다.
답변 1