原来C语言不支持体外循环
mcmay 2015-12-14 09:47:16 最近才闹清楚一件事,原来循环、判断等流程操作都得在函数体内进行,也就是说C语言不支持函数体外的循环与判断。以下简单的测试代码就能说明问题:
#include <stdio.h>
#define MAX 5
int j = 0;
if(j == 0)
{
int i;
for(i = 0; i < MAX; i++)
j += i;
}
int main(void)
{
printf("i = %d, j = %d\n", i, j);
return 0;
}
编译时就报错了。不过回头一想,函数体外的循环与判断就如同特殊情况下做手术时进行的人体外血液循环一样,对于多数人的普通生活来说也没有什么实际意义。