这样的输出结果是怎么来的
求助 %d输出整型,你后面那个小数.... 巴巴鲁 发表于 2020-9-19 22:11%d输出整型,你后面那个小数....
我知道啊,但这样为什么还能输出啊{:10_243:} 本帖最后由 sunrise085 于 2020-9-19 22:55 编辑
这是存储格式问题。
你可以看看我这个帖子,C语言中浮点数存储与%f输出细节探究
在这个帖子中有个程序,你把那两个数(aaa.a和Num.lf)改为你的这个数,看看输出结果。
你这个数这么长,估计应该在下半部分有结果
刚刚帮你验证了一下,83.8756757734534554636 在计算机中存储是这样的:二进制:0b01000000 01010100 11111000 00001011 00010010 01100110 00111000 01110100,十六进制:0x4054F80B12663874
小端存储,你以%d输出,只能输出后半部分,即 0x12663874 或者说是 0b 00010010 01100110 00111000 01110100 ,即十进制的308689012 sunrise085 发表于 2020-9-19 22:48
这是存储格式问题。
你可以看看我这个帖子,C语言中浮点数存储与%f输出细节探究
在这个帖子中有个程序, ...
《C语言中浮点数存储与%f输出细节探究》我收藏了,偷师成功 风过无痕1989 发表于 2020-9-19 23:22
《C语言中浮点数存储与%f输出细节探究》我收藏了,偷师成功
嗯嗯,看到了~加油!!
刚刚我还在另一个帖子中和一位鱼油争论呢,就是你刚刚被评为最佳的那个帖子。 sunrise085 发表于 2020-9-19 23:24
嗯嗯,看到了~加油!!
刚刚我还在另一个帖子中和一位鱼油争论呢,就是你刚刚被评为最佳的那个帖子。
我是来学习的,最佳能得就得,不能得我不在乎,我在乎的是在这个论坛,多学一点书本上没有的 风过无痕1989 发表于 2020-9-19 23:27
我是来学习的,最佳能得就得,不能得我不在乎,我在乎的是在这个论坛,多学一点书本上没有的
心态很好~~这就是个学习论坛。也不为别的,就为了兴趣学习一下
不在别人的帖子下聊天了。晚安
页:
[1]