| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 864 人关注过本帖
标题:printf 求解
只看楼主 加入收藏
模糊
Rank: 2
等 级:论坛游民
帖 子:56
专家分:53
注 册:2013-2-26
收藏
得分:0 
回复 20楼 wong1991
恩恩 结贴
2013-02-28 18:29
nandiin
Rank: 2
等 级:论坛游民
帖 子:29
专家分:25
注 册:2013-2-28
收藏
得分:0 
4/3 是整形运算,结果是1(不能整除的直接取整),而%d是整形格式符号,所以能输出正确结果,
4.0/3   运算式中既存在整形又存在浮点,所以进行强制类型转换,原则是向高级转换(这个优先级可以上网查查),所以相当于4.0/3.0=1.333333  而用%f也能正确输出

而对于第二和第四种情况, 用%f输出一个整形和用%d输出一个浮点都会导致输出结果不确定
2013-02-28 20:40
shmilyflf
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:5
帖 子:356
专家分:1008
注 册:2012-12-9
收藏
得分:0 
回复 4楼 peach5460
这个问题并没什么问题。对于C语言中的这个问题其实是个好问题。
是的,看书是可以知道“%d”是整型占位符,“%f”是浮点型占位符。
但你知道编译器是怎么处理的吗?尽信书不如无书,如果只是记书那还有什么创新?
也许你是大神,可是我还是比较喜欢这种深究内部机器表示的问题。
2013-03-02 21:04
快速回复:printf 求解
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.034686 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved