代碼:程序清單4.12_floatcnv.c程序_《C Primer Plus》P75
阿新 • • 發佈:2018-06-19
getc 2018年 int printf float 浮點 pri aot 輸出 // floatcnv.cpp : 定義控制臺應用程序的入口點。
//
/* flaotcnv.c -- 不匹配的浮點數轉換 */
/*
時間:2018年06月19日 00:06:49
代碼:程序清單4.12_floatcnv.c程序_《C Primer Plus》P75
目的:了解_不匹配的浮點數轉換_將輸出千奇百怪的結果
*/
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
float n1 = 3.0;
double n2 = 3.0;
long n3 = 2000000000;
long n4 = 1234567890;
printf("%.1e %.1e %.1e %.1e\n", n1, n2, n3, n4);
printf("%ld %d\n", n3, n4);
printf("%ld %ld %ld %ld\n", n1, n2, n3, n4);
getchar();
return 0;
}
/*
在VS2010中運行結果:
-----------------------------------
3.0e+000 3.0e+000 3.1e+046 1.1e-307
2000000000 1234567890
0 1074266112 0 1074266112
------------------------------------------
總結:
混淆了整數和浮點類型時,結果是千奇百怪
------------------------------------------
*
代碼:程序清單4.12_floatcnv.c程序_《C Primer Plus》P75