[英]The meaning of %lg in C language
我不知道“輸出結果是 %lg”這句話是什么意思。 我嘗試在printf
使用%lg
而不是%lf
,如下所示:
double a;
scanf("%lf",&a);
.....
printf("%lg",a);
return 0;
printf 的%lg
要么具有未定義的行為(C89),要么表現得像%g
(C99)。
%lg
進行打印,使用g
轉換說明符而不使用l
來打印double
。 由於默認參數提升, %g
也可用於打印float
s。 對於fscanf
,帶有浮點格式的l
意味着參數的類型是double而不是float 。 由於所有浮點修飾符都接受所有相同的格式,因此習慣上使用%lf
因為它的行為與scanf
系列中的%lg
完全相同。
%lg
時,更喜歡%lf
不是%lg
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.