型号PIC16F1829
编译器PICC-V9.83
unsigned long temp;
unsigned int aaa;
temp = 1600*aaa; // aaa变量是传递进来的,范围 0~4000
结果 temp的值是一个不确定的 unsigned int 类型。多出检查后无果,然后换了种写法
temp = (unsigned long)aaa*1600; // aaa变量是传递进来的,范围 0~4000
这样表达就正常了。PICC编译器严格到这种程度吗?PICC手册中我也没有找到相关说明,哪位道友详细指点一下! |