IAR FOR MSP430中关于浮点数赋值给整数的问题
signed char temp1 = (signed char)20.21; // 赋值后temp1 =20这个正的浮点数强制类型转换是没有问题的
signed char temp2 = (signed char)(-20.21);
此时编译是会提示Warning: floating-point value does not fit in required integral type
运行程序时,发现temp2 = 0
怎么解决这个负的浮点数强制转换问题
attach://20196.jpg
我试了一下没问题. 编译没有错误或警告. usk5yenj4id04dm 发表于 2012-5-24 18:45 static/image/common/back.gif
编译没有错误或警告.
搞定了
原来我的那个变量定义为char了
而IAR默认char为unsiged类型的
所以导致出错
我把变量定义为signed char就ok了
谢谢 642142533 发表于 2012-5-25 19:04 static/image/common/back.gif
搞定了
原来我的那个变量定义为char了
而IAR默认char为unsiged类型的
我也遇到这个问题了
uint8_t ret_code=0;
ret_code=(uint8_t)(-3.1);//这样写还是报那个警告的。
ret_code=(uint8_t)(-3);//这样写就不报那个警告了。
页:
[1]