在C工程中,经常要加一些代码,同时要定义一些新变量,此时,如果在添加代码处定义变量,那么程序就会出错,定义变量必须放在函数的最前面,我觉得,这是C语言中的一个比较丑陋的现象,比如在C语言编译器中编译下面程序会出错:(我以前不知道为什么下面的程序会有错,所以第一次碰到这个情况时花了很长时间才把bug揪出来. )
#include<stdio.h>
int main()
{
int a = 1;
a = a + 1;
int b; // 用C编译器,这个地方会有问题!!!
// add some new code
return 0;
}
上面的代码如果放在C++编译器中,就不会有任何问题.吃一堑,长一智;前事之鉴,后事之师. 这大概就是经验的作用吧.