其他分享
首页 > 其他分享> > 2021-11-11

2021-11-11

作者:互联网

           "21天好习惯"第一期-20
     今天学习C语言全局变量和局部变量。

形参变量要等到函数被调用时才分配内存,调用结束后立即释放内存。这说明形参变量的作用域非常有限,只能在函数内部使用,离开该函数就无效了。所谓作用域(Scope),就是变量的有效范围。
不仅对于形参变量,C语言中所有的变量都有自己的作用域。决定变量作用域的是变量的定义位置。

  1. 局部变量
    定义在函数内部的变量称为局部变量(Local Variable),它的作用域仅限于函数内部, 离开该函数后就是无效的,再使用就会报错。例如:
    int f1(int a)
    {
    int b,c; //a,b,c仅在函数f1()内有效
    return a+b+c;
    }
    int main()
    {
    int m,n; //m,n仅在函数main()内有效 return 0;
    }

2.全局变量
在所有函数外部定义的变量称为全局变量(Global Variable),它的作用域默认是整个程序,也就是所有的源文件,包括 .c 和 .h 文件。例如:
int a, b; //全局变量
void func1(){
//TODO:
}
float x,y; //全局变量
int func2(){
//TODO:
}
int main(){
//TODO:
return 0;
}
a、b、x、y 都是在函数外部定义的全局变量。C语言代码是从前往后依次执行的,由于 x、y 定义在函数 func1() 之后,所以在 func1() 内无效;而 a、b 定义在源程序的开头,所以在 func1()、func2() 和 main() 内都有效

标签:11,func1,main,函数,int,作用域,2021,全局变量
来源: https://blog.csdn.net/m0_63216734/article/details/121274520