C 长双值的表示

C 长双值的表示,c,printf,floating-point-precision,C,Printf,Floating Point Precision,我想知道一个值是如何用长双精度表示的。 是L还是LF。我问这个问题,因为在一些地方我读到它是L,在一些地方是LF。 在一个考试答案和一些像indiabix这样的网站上,它是L,在一些堆栈溢出帖子中,它是LF 浮动后缀:其中一个 (C99第6.4.4.2条第1款) 非固定浮动常量的类型为double。如果以字母f或f作为后缀,则 键入float。如果后缀为字母l或l,则其类型为long double (ibidem,^4)对float和double都使用“%f”,它将被转换为double 长双精度

我想知道一个值是如何用长双精度表示的。 是L还是LF。我问这个问题,因为在一些地方我读到它是L,在一些地方是LF。 在一个考试答案和一些像indiabix这样的网站上,它是L,在一些堆栈溢出帖子中,它是LF

浮动后缀:其中一个

(C99第6.4.4.2条第1款)

非固定浮动常量的类型为
double
。如果以字母
f
f
作为后缀,则 键入
float
。如果后缀为字母
l
l
,则其类型为
long double

(ibidem,^4)

对float和double都使用“%f”,它将被转换为double

长双精度数据类型可以有以下转换说明符%Le,%Le,%Lf,%LG,%LG,

从p168中提取:

数据类型:长双精度,printf转换说明符:%Lf,scanf 转换说明符:%Lf

数据类型:双精度,printf转换说明符:%f,scanf转换 说明符:%lf


在这两种情况下,你的答案是“代码> %LF < /C>。”我怀疑这个问题是关于C或C++中的常量后缀(这是什么),你能澄清吗?我们是在谈论<代码> Prtff < /C> >代码> SCAFF < /代码>占位符还是常量后缀?1)<代码> L>代码>可以应用到<代码> a、e、e、f、f、g、g,G2)此答案适用于
printf()
函数系列。
scanf()
   f l F L