c语言浮点型、整形转换问题

来源:百度知道 编辑:UC知道 时间:2024/06/16 16:20:59
我用 b=int(a);的方式转换,a=3.0000000的情况下,b竟然等于2。太郁闷了

很正常, 浮点类型是有误差的

可以用四舍五入的方式, 对大于0的数 b = (int)(a+0.5)

我晕,应该是 b=(int) a;

用万能转换
int b=Convert.ToInt32(a)