本文主要介绍局部变量与全局变量的作用域,通过最后的简单的程序代码可以看出二者的作用域分别是哪里。
局部变量
关于局部变量的几点说明:
1. 局部变量是在函数内部或者复合语句中定义的变量,作用域分别为函数内部和复合语句内部。
2. 允许在不同函数中使用相同的函数名,它们代表不同的对象,分配不同的单元,互不干扰,也不会混淆。
3. 形参变量属于被调函数的局部变量,实参变量属于主调函数的局部变量。形参和实参是不同函数中的变量,作用于不同的函数中。
全局变量
关于全局变量的几点说明:
1. 在函数外部定义的变量属于全局变量,也叫外部变量。作用域是从变量定义的位置开始一直到文件结束,全局变量可以被该范围内的所有函数使用。
2. 全局变量在定义时,若未初始化,系统默认为0。
3. 全局变量可以加强函数之间的数据联系,但是会使得函数之间的独立性降低。从模块化程序设计的角度看是不利的,因此要尽可能减少使用或者不使用全局变量。
关于全局变量和局部变量的一个例子:
程序代码:
#include <stdio.h>
int a,b;
int f1(){
a = a + 10;
b = b + 15;
return a + b;
}
int f2(){
int a = 1;
a = a + 5;
b = b + 8;
return a + b;
}