%lf 和%f 為什么在printf函數(shù)輸出后都是六位小數(shù)
double 和float 對(duì)應(yīng)的%lf和%f 為什么在printf函數(shù)輸出后都是六位小數(shù),double不是精度更高嗎,不是應(yīng)該有更多小數(shù)嗎,如果不是的話為什么不直接用%f 而要用%lf.輸出結(jié)果上沒(méi)有什么區(qū)別。
#include?<stdio.h> int?main() { ????char?c?=?'a'; ????int?n?=?c;????????//將c賦值給n ????float?f?=?c;??????//將c賦值給f ????double?d?=?c;????//將c賦值給d ????printf("%d\n",n); ????printf("%f\n",f); ????printf("%lf\n",d); ????return?0;???? }
2021-09-17
我也一直有這個(gè)疑問(wèn),如果%f和%lf輸出沒(méi)區(qū)別,那為什么還要有%lf呢,直接用%f就行了。double不是也可以用%f輸出嗎,搞不懂,哪個(gè)大神來(lái)解釋一下
2015-04-25
唉,沒(méi)人來(lái)嗎
2015-04-25
你理解錯(cuò)了1.2f表示兩位小數(shù)好像是,你百度下就清楚了