C 언어를 배우기 시작했지만 문제는 플로트 숫자를 사용하는 방법에 대해 혼란 스럽습니다. Xcode를 IDE로 사용하고 있습니다. 여기에 저를 얻었다 결과가 혼동됩니다float number in c [Xcode IDE]
float x1 = 1.123456789123456789f;
double x2 = 1.123456789123456789f;
float x3 = 987654321.123456789f;
double x4 = 987654321.123456789f;
printf("x1 = %.20f\n", x1);
printf("x2 = %.20f\n", x2);
printf("x3 = %10.10f\n", x3);
printf("x4 = %10.10f\n", x4);
출력은 다음과 같습니다
x1 = 1.12345683574676513672 x2 = 1.12345683574676513672 x3 = 987654336.0000000000 x4 = 987654336.0000000000
이 질문은, 왜 x1
, x2
이 1.12345678
후 자신의 부동 소수점 자리를 잃고있다? 그리고 왜 과 x4
은 잘 렸는가?
또한 x3과 x4는 987654321 대신 987654336 인 잘못된 십진수를 생성합니다. – Centurion