the*_*cat 4 c++ floating-point integer
如果我有
(float)value = 10.50
Run Code Online (Sandbox Code Playgroud)
并做
int new_value = (int)value
Run Code Online (Sandbox Code Playgroud)
轮数会有什么规则?
当浮动类型的有限值被转换为整数类型时,小数部分被丢弃(即,该值被截断为零).
所以在-10.5它的情况下,它被转换为-10.
C++ 11 4.9浮动积分转换[conv.fpint]
浮点类型的右值可以转换为整数类型的右值.转换截断; 也就是说,丢弃小数部分.如果截断的值无法在目标类型中表示,则行为未定义.[注意:如果目的地类型是bool,请参阅4.12. - 尾注]