打印
[其它应用]

C语言printf()函数具体解释

[复制链接]
2212|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
七毛钱|  楼主 | 2025-3-5 22:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
问题1:printf("%f\n",a) 输出为什么是0.000000?答:%f 提取8字节。a仅仅有4字节,提取出来的数占了float表示法的指数部分。尾数部分为0。所以终于是0
问题2:printf("%d\n",x)  输出为什么是0?答:%d 提取4字节,x有8字节。提取出来的数实际上是float表示法的指数部分(恰好是0),所以终于是0
问题3:printf("%f,%f\n",a,x); 输出都是0.000000 为什么?答:參照问题1的解释。提取了八字节后,后面的已经乱了
问题4:printf("%f,%f\n",x,a);调换一下a,x的顺序,正常了,为什么?答:这是正常的情况而已。

使用特权

评论回复
沙发
jf101| | 2025-3-21 16:33 | 只看该作者
C语言printf()函数很有用途

使用特权

评论回复
板凳
星辰大海不退缩| | 2025-3-27 13:01 | 只看该作者
非常不错的函数使用

使用特权

评论回复
地板
小夏天的大西瓜| | 2025-4-13 23:14 | 只看该作者
学习一下printf函数

使用特权

评论回复
5
彩虹捕手| | 2025-4-19 12:44 | 只看该作者
问题1的解释很到位,%f需要8字节来存储double类型的数据,而a只有4字节,所以会读取到错误的数据。

使用特权

评论回复
6
神话编织者| | 2025-4-22 23:44 | 只看该作者
printf() 打印不出来 浮点数吧!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

353

主题

2436

帖子

4

粉丝