【matlab、c++、0.499】关于matlab和c++在浮点数转整数的问题 – 四舍五入
当用c/c++做浮点数转换成整数时,处理一般都很简单,丢掉小数位置保留整数部分(没有看过具体的汇编,不清楚如果浮点数表达的位置太大,以至于整数溢出的情况)。
而在matlab中,浮点数转换成整数时候,会有四舍五入的规则,即:
uint8(0.499) = 0
uint8(0.5) = 1
所以在用matlab时,需要注意到数值转换与c/c++的不同。
当用c/c++做浮点数转换成整数时,处理一般都很简单,丢掉小数位置保留整数部分(没有看过具体的汇编,不清楚如果浮点数表达的位置太大,以至于整数溢出的情况)。
而在matlab中,浮点数转换成整数时候,会有四舍五入的规则,即:
uint8(0.499) = 0
uint8(0.5) = 1
所以在用matlab时,需要注意到数值转换与c/c++的不同。