使用某些版本的 minGW,以下代码将打印 99。
int high;
high = pow(10,2);
std::cout<<high<<std::endl;
pow函数的参数是double,但为什么我得到99?谁能告诉我 pow 函数中隐藏的过程?
将双精度型转换为整数会截断小数部分。pow(10,2)
产生稍微不准确的结果;如果稍微高一点,你会得到 100,如果稍微低一点,你会得到 99。
道德:如果你的意思是i*i
, write i*i
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)