标题:全局变量和局部变量
取消只看楼主
苏护苏
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2017-5-4
结帖率:66.67%
已结贴  问题点数:10 回复次数:1 
全局变量和局部变量
#include <stdio.h>

int main ()
{
 int fun ();
 int a=5,b=7;
 fun ();
 printf("%d,%d\n",a,b);

return 0;
}
int  fun ()
{ int a,b;
  a=100;
  b=200;
return a,b;
}
运行结果是5,7.
#include <stdio.h>
int a,b;
int main ()
{
void fun ();
 int a=5,b=7;
 fun ();
 printf("%d,%d\n",a,b);

return 0;
}
void  fun ()
{
  a=100;
  b=200;

}
这个结果也是5,7
想问原因是不是局部变量屏蔽全局变量
如果是那这两个函数里的a,b指得是不是同一个地址。
本人是新手不会调试,所以问问大神!!!
搜索更多相关主题的帖子: return include 
2017-05-16 22:23
苏护苏
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2017-5-4
得分:0 
还是不太明白,就第二个程序,定义了全局变量a,b那系统给他分配两块内存,主函数中给他赋值的时候是不是操作的是同一块内存?也就是说这整个程序里的a,b指的就是同一块内存的值?如果我前面说的正确,输出5,7的原因就是局部变量屏蔽全局变量吧?
2017-05-17 08:51



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-477045-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.004319 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved