您的位置:首页 > 其它

C-041.局部变量跟全局变量的区别

2015-12-04 16:27 232 查看
局部变量:

概念:定义函数内部变量

定义格式:变量类型 变量名称;

作用域:从定义那一行开始到所在代码块结束

生命周期:从代码执行到定义的哪一行开始,到其所在的代码的结束为止

特点:相同的代码块中不可以有同名的变量
不同的代码块中可以有同名的变量,内部的变量会覆盖外部定义的变量

全局变量:

概念:定义在函数外部变量

定义:变量类型 变量名称 = 值;

声明:变量类型 变量名称;

特点:1、不可以重复定义,但可以重复声明

2、局部变量可以与全局变量同名,在局部变量的作用域范围内,那么局部变量会覆盖全局变量

3、如果没有定义仅有声明,系统自动给它定义并将其初始化为0

作用域:从定义的那一行开始,直到文件结束
生命周期:从程序启动开始,直到程序退出才消亡

#include <stdio.h>

int num;//只声明,系统默认初始化为0,这点跟局部变量不同

int main(int argc, const char * argv[]) {

printf("num = %d\n",num);//打印0 是全局变量

int num = 20; //定义了局部变量1 = 20
printf("num = %d\n",num);//打印 20 覆盖了全局变量
{
num = 40; //把局部变量1的值改成40
int num = 10;//定义局部变量2 = 10
printf("num = %d\n",num);//打印 10
num = 30;//把局部变量2改成30
}//局部变量2被系统回收
printf("num = %d\n",num);//打印 40 这里是局部变量1

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: