scanf读%f时,系统会读取4字节长度,放到float的空间。
double有8字节空间,float和double的关系不像int和long的关系那样,简单的在后面增加4字节的位置,是两个不同的存储区域
printf时,C里的float其实在使用过程中被隐式转换成了double
所以在printf时用float还是double其实是一样的。用%f和%lf都可以。
但是请注意!!!
不同的编译器其实对printf中double有着不同的处理
1.codeblocks
在codeblocks中printf对double和float是统一%f输出

2.devc++
在devc中double和float可以用%f,double也可以用%lf进行输出

所以,为了保证兼容性,输出还是使用%f吧。
大家其实也发现了,进行格式输出时,最后一位是四舍五入
最后
以上就是甜甜马里奥最近收集整理的关于double与float的详解的全部内容,更多相关double与float内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复