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

박종완님의 프로필 이미지
박종완

작성한 질문수

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

3.7 다양한 정수형들

형식지정자 크기와 자료형 질문입니다.

작성

·

194

0

#include

#include

#include

int main(void)

{

long long ll = 12345678908642LL;

printf("long long = %lld, %hd, %llu\n", ll, ll, ll);

return 0;

}

%llu 인 format specifier의 범위안에 ll 이 정의되어 있는데 다르게 출력되는지 궁금합니다.

답변 1

0

안녕하세요?
printf 함수는 printf("%hd, %llu", ll, ll); 으로 출력을 해주면 longlong의 8byte가
%hd에 2byte가 들어가고 나머지 6byte는 llu로 들어갑니다.
llu의 나머지 2byte는 뒤쪽의 ll에서 가져오게됩니다. 때문에 값이 다르게 출력됩니다.

박종완님의 프로필 이미지
박종완

작성한 질문수

질문하기