C语言中的“局部变量”是什么意思?

 我来答
仇翠花运寅
2019-11-12 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.4万
采纳率:32%
帮助的人:712万
展开全部
局部变量是指在程序中,只在特定过程或函数中可以访问的变量,是相对于全局变量而言的。
在C语言中,局部变量可以和全局变量重名,但是局部变量会屏蔽全局变量。
#include

int fun(int a)
{
int temp; // 变量temp就是定义的一个局部变量,在fun函数执行完后,其在内存中占用的内存区就会释放回收
temp = 2*a;
return temp;
}
int b; // 变量b就是一个全局变量,当程序执行完后,才释放其占用的内存
void main()
{
int a=2; // 变量a也是局部变量
b = fun();
}
介恭却巳
2020-01-08 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.4万
采纳率:29%
帮助的人:825万
展开全部
C语言中全局变量有两种情况:
1.
定义在所有函数之外的变量;
2.
用static修饰的变量;
其余的变量都是局部变量,即定义在某个函数或者代码段内部,其作用域局限于这个函数或者代码段。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
邓廷谦尤酉
2019-11-16 · TA获得超过3.8万个赞
知道大有可为答主
回答量:1.4万
采纳率:29%
帮助的人:634万
展开全部
静态局部变量是为了再下一次进入其所属函数时,变量的值仍保持上一次的值.而main函数在程序的一次运行中只会运行一次,所以设置静态局部变量就没有意义了.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
支玉英阙汝
2020-03-02 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.4万
采纳率:34%
帮助的人:980万
展开全部
就是在某个函数内的变量,不会影响到其他的变量的!
而全局变量的话,很有可能就会影响到其值的变化.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
邹竹青王莺
2020-01-17 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.3万
采纳率:30%
帮助的人:743万
展开全部
C语言全局变量和局部变量
引子---
?
??
???变量可以在程序中三个地方说明:
函数内部、函数的参数定义中或所有的函数外部。根据所定义位置的不同,
变量可分为局部变量、形式参数和全程变量。从空间角度来看,变量可以分为全局变量和局部变量,而从时间角度来分的
可以有静态存储变量和动态存储变量之分。
一。全局变量和局部变量
1。局部变量
他是
指在函数内部定义的变量
作用域为定义局部变量的函数
也就是说他只能在定义他的函数中使用
最值得注意的是
只有在程序执行到定义他的模块时才能生成,一旦执行退出该模块则起变量消失
eg.
func
()
{
?
?int
x;?
?局部变量x的作用域
很明确
?
?......
}
2。全局变量
在程序执行的过程中一直有效
eg.
int
x=1;
func
()
{
?
?x=x+1;
}
func1
()
{
??x=x-1;
}
main
()
{
}
由此不难看出整型x的作用范围
对于全局变量
如果在定义的时候不做初始化
则系统将自动为起赋值
数值型为0
字符型为空'\0'
全局变量的弊端
增加内存开销
降低函数的通用性
定义全局变量时
理想的位置是在文件的开头
当这些函数以及同一个程序中的其他源程序文件中的某些函数需要使用该全局变量时
在函数内部对该变量使用extern
加以说明
说明他是外部的
(这里还要做详细的讲解)
eg.
main
()
{
extern
int
a,b;
printf
("mIn
is
%d\n",min(a,b));
}
int
a=1,b=2;
int
min
(x,y)
int
x,y;
{
int
z;
z=x

评论
0

0

加载更多
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式