发布网友 发布时间:2022-05-29 20:33
共3个回答
热心网友 时间:2023-11-23 06:27
printf 参数中的 格式串与后面的变量类型一定要一致或相容,追答很简单。两个类型并不同,
常数5.001 是缺省的double 类型,是8个字节;
变量 b虽5.001,是float,是4个字节;
printf 编译时知道后面类型,把参数入栈,
但执行时并不判断后面是什么参数类型,
只把它们按 格式串中类型处理,%d就是 当成整数处理,
当然显示是错的。
同一个浮点值,8个字节与4个字节的单元内容并不同,
错当整数显示自然也不同了,
如此而已,
热心网友 时间:2023-11-23 06:28
精度丢失啦~~~
热心网友 时间:2023-11-23 06:28
不明白你想干什么,这种语句就不应该出现滴,printf()函数还是查查API好好学习学习吧