避免变量无意义的状态存在
C语言是一种以实用为主的语言,而非追求理论完美的学院派语言。
在当时,CPU处理速度很低,为了加快编译速度,C语言要求变量统一定义在栈空间尺寸计算前。
但现在,这一点已经没有任何存在的必要了。
比如
int i;
// 这里i是无状态的,没有存在的意义
for( i=0; i<10; ++i ) ……
在C99中,建议为
for( int i=0; i<10; ++i ) ……
当然,并不是所有情况下都需要状态有意义,比如
int n;
// 这里只需要n存在,并不需要n有状态
scanf( "%d", &n );