Chinaunix

标题: C语言自动转换类型 [打印本页]

作者: a811032338    时间: 2012-01-21 21:40
标题: C语言自动转换类型
①printf("%d",3.5);
②printf("%f",5);
为什么不会自动转换类型   而3.5+5就会自动转换类型  那什么时候才会自动转换类型
作者: tempname2    时间: 2012-01-21 23:05
因为printf第一个以后的参数可以是任何类型。
作者: fanasy    时间: 2012-01-25 12:49
a811032338 发表于 2012-01-21 21:40
①printf("%d",3.5);
②printf("%f",5);
为什么不会自动转换类型   而3.5+5就会自动转换类型  那什么 ...




printf("%f",3.5+5)
成功是因为 3.5+5 =8.5  ,8.5就是float
但是
printf("%d",3.5+5) 是不会成功的
作者: pmerofc    时间: 2012-01-25 19:47
提示: 作者被禁止或删除 内容自动屏蔽
作者: myforever    时间: 2012-01-26 15:16
看看是否有必要进行强制转换

作者: chunyv    时间: 2012-01-28 09:10
别总想着偷懒,否则后患无穷。。
作者: fanasy    时间: 2012-02-15 22:13
sorry 8.5 确实是double 回复 4# pmerofc


   




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2