10.6 연습문제 리터럴 사용하기 질문입니다
, DO rosi님이 작성4.900000e-302를 출력하는 연습문제인데
정답코드에 4.9e-302L이렇게 써야하는지 이해가 안됩니다.
정규화 과정을 통해서 저렇게 바뀌는 건가요? 설명 부탁드립니다.
코드
#include<stdio.h>
int main()
{
printf("H%cllo, %s %d %Le\n", 'e', "world", 8, 4.9e-302L);
return 0;
}
Re: 10.6 연습문제 리터럴 사용하기 질문입니다
, 도장_ 관리자님이 작성long double에 맞춰 입력값을 지정하고,
출력 형식 %Le에 따라 출력 형식이 정해지는 문제입니다.
L이 없으면 double 타입으로 생각해서 입력값을 처리하려 하기 때문에 L을 붙여야 합니다. 문제에서 4.3e-302L과 같이 큰 값으로 한 이유는 double 타입으로는 저장할 수 없는 값이기 때문입니다.