第一部分问题
局部变量(Local Variable):定义在函数体内部的变量,作用域仅限于函数体内部。离开函数体就会无效。再调用就是出错。
全局变量(Global Variable):定义:所有的函数外部定义的变量,它的作用域是整个程序,也就是所有的源文件,包括.c和.h文件。
#include<stdio.h>
int main()
{
int i=520;
printf("before: i=%d\n",i);
for(int i=0;i<10;i++){ //for语句中可以定义变量与外部 i作用域不同不发生冲突
printf("%d\n",i);
}
printf("after:i=%d\n",i);
return 0 ;
}
第二部分问题:
赋值语句需要有函数执行,c语言最基本的执行体是函数,你可以初始化,但不能在函数体外赋值。
C语言标准:全局变量(external variable)和静态变量 (static variable)的初始化式必须为常量表达式[1]
#include<stdio.h>
int a;
a=10;
int b;
b&#