请问大家,出现下面问题如何解决?
在msp430f149上,用时间限制版的IAR C 1.26B编程计算几个数的以2为底的幂。
编译提示“warning[35]:Old-style (K&R) type of function declarator" 这个警告性错误看起来是提示用了老版本的C的说明符。
在仿真器中一步一步观察计算结果,发现a[1]--a[5]的结果为1,3,7,15,31,比实际应该的数值小1。
如果在仿真器中直接“运行”的话,a[i]提示Error[63]:Varia××e not active
不知这是怎么回事,如何解决?
#include <math.h>
#include <msp430x14x.h>
void main()
{
int i=0, a[6];
while(i<6)
{
a[i]=pow(2,i);
i++;
}
}
设置问题
project->icc430->code generation->Type checking将Flag old-style..去勾即可
按照更改后,关于“旧版本”的警告没了,但是
在仿真时出现的2个警告性错误还有:
Too he××y optimization in "test_m" (test_m.c为试验用程序)
warning[30]:Varia××e may not be correctly evalua
warning[13]:No break on program exit
这是什么原因造成的?
尽管是试用版本,但号称功能还是全的,不会是保留了很多吧?
你的这个程序变得不很好
用for语句不是更好吗?你说的现象应该调整优化等级,我试过,没警告.