f和lf有啥区别?
在c语言中f和lf的全称是%lf 与%f,它们的区别如下:
1、所能表示数的范围不同。
单精度浮点的表示范围:-3.40E+38 ~ +3.40E+38,双精度浮点的表示范围:-1.79E+308 ~ +1.79E+308
2、有效数字位数不同。
单精度浮点数有效数字保证6位,部分7位,双精度浮点数有效数字保证15位,部分16位。
3、代表的数据类型不同。
%f代表单精度浮点型数据(float),%lf代表双精度浮点型数据(double)。在程序中处理速度不同一般来说,CPU处理单精度浮点数的速度比处理双精度浮点数快。
4、输入不同。
%lf\n:%lf\n输入数据时要求是float类型。%f\n:%f\n输入数据时要求是double类型。
5、输出不同。
%lf\n:double类型以%lf\n格式输出数据时不会自动转成%lf\n格式,会导致输入值错误。%f\n:float类型以%f\n格式输出数据时会自动转成%f\n格式,不会导致输入值错误。
主要特点:
C语言是一种结构化语言,它有着清晰的层次,可按照模块的方式对程序进行编写,十分有利于程序的调试,且c语言的处理和表现能力都非常的强大,依靠非常全面的运算符和多样的数据类型,可以轻易完成各种数据结构的构建,通过指针类型更可对内存直接寻址以及对硬件进行直接操作,因此既能够用于开发系统程序,也可用于开发应用软件。