c语言double类型printf问题
背景:今天在用c语言写程序时遇到了一个问题:printf("%lf",double(r));竟然输出乱码(0.000000),浏览了几十个网页之后,大致找到了问题原因。
结论:在c语言中,double类型的读入必须用"%lf";输出必须用"%f"
解释:double和float的精度是不同的,故存储空间也是不同的,所以如果要读入double类型,必须要用%lf来读入,以免精度丢失。而输出,由于printf中并无对%lf的严格定义,故使用%lf不一定会出现正确结果。那使用%f输出又如何呢?由于c语言中的默认参数提升规则,%f输出的不论是float还是double都会被提升到双精度进行输出,并不会有精度丢失。
如果使用C++编译器,那么用%lf输出是正确结果,如果是g++编译器,则是会输出错误结果,所以尽量使用%f输出double类型。
如需更详细解释,请移步C语言官网查看printf详细使用规则。
c语言double类型printf问题相关推荐
- c语言自定义输出小数点位数_c语言double类型默认输出小数几位
C语言中常用的小数有两种类型,分别是 float 或 double:float 称为单精度浮点型,double 称为双精度浮点型.不像整数,小数没有那么多幺蛾子,小数的长度是固定的,float 始终占 ...
- c语言double型小数点后几位小数,c语言double类型默认输出几位小数?
C语言中常用的小数有两种类型,分别是 float 或 double:float 称为单精度浮点型,double 称为双精度浮点型.不像整数,小数没有那么多幺蛾子,小数的长度是固定的,float 始终占 ...
- c语言double类型的输入
c语言double类型的输入 double输入用 %lf ,而不能用 %f 今天在使用double类型输入时先用了 scanf("%lf", &a),结果以%f输出的时候都 ...
- c语言double型小数点后几位_c语言double类型默认保留几位小数?
c语言double类型默认保留几位小数? 发布时间:2020-04-23 09:31:42 来源:亿速云 阅读:945 作者:小新 c语言double类型默认保留几位小数?相信有很多人都不太了解,今天 ...
- c语言double保留2位小数0,c语言 double类型保留小数问题
c语言 double类型保留小数问题0 落寞的夕阳A2015.12.29浏览164次分享举报 用户输入希望保留小数的位数,1到16,怎么实现 int main(){ double a = 1.1234 ...
- c语言中数据精度发生错误,C语言Double类型数据保证精度有关问题
C语言Double类型数据保证精度问题 我用手算算出的数据为-1.35323517,但是在C语言里面为了保证数据精度,VC++运行的结果为-1.35323517024517 ,按说应该在-1.3532 ...
- c语言使用double时 %,c语言double类型的输入
c语言double类型数据四舍五入 借助math库的round函数 #include double ext_round(double data, int precision) { , precisio ...
- c语言double类型是几字节,c语言中int long float double 等类型所占字节及输出表示(转)...
16位编译器 char :1个字节 char*(即指针变量): 2个字节 short int : 2个字节 int: 2个字节 unsigned int : 2个字节 float: 4个字节 doub ...
- C语言double类型取余操作
整数的取余%运算,两个操作数要求是整型数字,结果也是整型数字.double类型的无法使用 解决: float使用fmodf(a,b); double使用fmod(a,b); long double使用 ...
最新文章
- 【Python基础避坑】函数内存底层分析,全局变量/局部变量,参数传递,浅拷贝/深拷贝
- Linux下snmp常用的OID ---- SNMP硬件监控
- 面试准备每日五题:C++(二)——mallocnew、宏、volatile、constvolatile、(a)和(a)
- 将List集合用字符串,逗号隔开进行拼接 ,五种方法
- laravel 5连接MySQL_Laravel 手记(连接mysql)
- 字节转换,字符串与数字转换
- RichTextBox中插入图片
- 属于服务器端运行的程序_服务器端编程Java 引起人们的注意很大程度上始于 applet...
- 静态网页制作前夕小记录
- 罗马盘,大力盘,大圣盘等网盘资源搜索免费下载资源教程
- 笔记本电脑华硕N56VZ的几种螺丝规格
- jeesite图片上传并显示
- n维椭球体积公式_考前必背!数量关系、资料分析常用公式汇总!不再头大!...
- 学c语言学生智商要搞么,作为一个学渣,哥来告诉你如果你智商不够该怎么办...
- 国内常用公共DNS服务器、各省运营商DNS服务器汇总
- Enscape 代理服务器和防火墙设置
- [4G5G专题-14]:应用层-5G的三大业务应用场景(多、快、好、省)
- ENVI【非监督分类】
- 关于VS中如何打开控制台
- iframe无边框实现