整理C知识点--变量作用范围

本文详细介绍了编程中变量的作用域概念,包括全局变量和局部变量的定义及其使用范围,并通过实例说明了两者之间的区别及可能产生的名称冲突问题。

按照作用域分:
(1).全局变量 Globalvariabless
在所有函数外部定义的变量叫全局变量
作用范围:从定义位置开始到整个程序结束
(换一种说法:函数调用全局变量,全局变量必须在被调用函数的上方)
e.g:
#include <stdio.h>
void eg1(void)
{
printf("i = %d\n",i);//这里的i 在下方被定义
}
int i = 10;//Globalvariable
void eg2(void)
{
eg1();
printf("i = %d\n",i);//这里的i是Globalvariable 已被定义
}
int main(void)
{
eg2();
return 0;
}
该程序会报错 无法识别 i
把函数 eg1 放在 Globalvariable 下方就不会报错(执行顺序从上到下)
(2).局部变量 Localvariable
在一个函数内部定义的变量或者函数的形参 统称为局部变量
作用范围:只能在定义的函数内部使用

    e.g:
    void eg(int i)
    {
     int j = 20;
    }
    //i & j 都是局部变量 i 又称之为 形参

(3).注意的问题
全局变量和局部变量的名称冲突
e.g:
#include <stdio.h>
int i =10;//全局变量 i = 10
void eg(int i)//局部变量 i
{
printf("i = %d\n",i);
}
int main(void)
{
eg(8);//局部变量 i 被赋值8 变成实参

 return 0;
}
输出结果:i = 8
全局变量和局部变量名称相同:Localvariable 会把Globalvariables屏蔽

转载于:https://blog.51cto.com/12431776/2053990

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值