//test.c #include<stdio.h> int main() { int a=0; printf("%d",a); int b=1; printf("%d",b); return 0; }
上面这几行代码在VS2010下运行,报了下面两个错。
error C2143: 语法错误 : 缺少“;”(在“类型”的前面)
error C2065: “b”: 未声明的标识符
很纳闷,b怎么未声明了。原来,在c语言中,局部变量必须在语句块最上面声明。
于是尝试把b的定义放到最上面,程序便执行成功了。
//test.c #include<stdio.h> int main() { int a=0; int b=1; printf("%d",a); printf("%d",b); return 0; }