本帖最后由 XIANSir 于 2011-3-19 17:13 编辑
int a[10];
int b;
c[10];
d;
f(x)
{ return x;
}
int main()
{ f(10);
}
--------------------------------------------------------------------------------------------------
下面是对以上代码进行的一个编译测试报告:
1、WINAVR+TKStudio C语言标准设定为C89或GNU89:
2、WINAVR+TKStudio C语言标准设定为C99或GNU99:
3、Keil C51:
4、ARM MDK:
5、VC 2008(警告级别设为3):
6、VC 2008(警告级别设为4):
其实我所希望Keil有的就是VC这样的功能,通过设定不同的警告级别来解决我碰到的问题。而且从WINAVR和VC2008也可以看出来,新的C语言标准不鼓励使用default int这个古老的C语言特性。 |