【提问】数型与浮点型的!!i 的值不同?
求大佬告知有仁吗 冒昧的问一句 , !i 是什么意思。 是取反嘛~ 打印函数里面应该不能用这种符号吧 参数那里 可以吧
本帖最后由 费尔曼 于 2018-2-11 01:35 编辑
因为返回的0和1默认类型是int类型。
float i是浮点型。
!i返回的值就是int型的0。
那么!!i也是个整型的1.
但是LZ用的是%f,也就是想用浮点型去输出这个整型的1,C语言中自动类型转换可以把float转成int,不能把int转换成float。
double同理。
既然不能int不能自动转换成浮点型并用%f输出,那为什么编译的时候又没有报错,还输出了0.00000?
知乎大佬给的详细解释:
https://www.zhihu.com/question/55152080
页:
[1]