C语言问题:%f和%lf的区别

您所在的位置:网站首页 肺动脉血管分级图解高清 C语言问题:%f和%lf的区别

C语言问题:%f和%lf的区别

#C语言问题:%f和%lf的区别| 来源: 网络整理| 查看: 265

%f和%lf分别是float类型和double类型用于格式化输入输出时对应的格式符号。 其中: float,单精度浮点型,对应%f。 double,双精度浮点型,对应%lf。 在用于输出时: float类型可以使用%lf格式,但不会有任何好处。 double类型如果使用了%f格式可能会导致输出错误。 在用于输入时: double 类型使用了%f格式,会导致输入值错误。 float类型使用double类型不仅会导致输入错误,还可能引起程序崩溃。 所以在输入输出时,一定要区分好double和float,而使用对应的格式符号。

 

为什么呢???因为C语言的%f是浮点型函数的占位符,%If是长浮点型函数的占位符

 

讲道理这种东西没学过编译原理很容易错。 因为float和double都会被转换成double然后送给printf函数 所以其实用%f还是%lf输出其实并不重要 然而输入时%lf表示地址对应的是8字节的double,%f表示地址对应的是4字节的float,存储方式都不一样,混用了肯定会出问题。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3