全局变量,局部变量和形式参数
来源:互联网 发布:dede模板下载站源码 编辑:程序博客网 时间:2024/06/05 05:58
全局变量:全局变量在整个程序内都是可知的,因此可以被任何代码段所使用,他们在程序中执行时保持他们的值,可以再任何函数之外来创建他们,任何表达式都可访问他们。
全局变量存储在一个固定的存储区,这时由编译器设定的,当程序中多个函数使用一个变量时,全局变量就变得很有用。但是不必要的全局变量却会带来麻烦:
1、全局变量在整个程序运行中都占据内存,只有当程序结束时才被销毁。
2、在应该使用局部变量的地方使用全局变量会降低函数的同用行,因为全局变量必须依靠在他本身之外的定义。
3、使用大量的全局变量会使程序因为不可预知的副作用而产生错误。(有可能会因改变全局变量的值而产生错误)
例:
#include<stdio.h>
intcount;//全局变量
intmain()
{
count=100;//可以使用count
func1();
return0;
}
局部变量:在函数内部声明的变量成为局部变量,更具体的说是在代码块内部创建的变量叫做局部变量(代码块就是一对{}内的内容),局部变量在进入代码块被创建,出了代码块立即被销毁。
例如:
void fun1(void)
{
intx;
x = 10;
}
voidfun2(void)
{
intx;
x = -99;
}
这两个x就是局部变量。因为局部变量在出了代码块就被销毁,因此我们可以使用static这个关键字修饰变量,使他的值保留下来。没有被static声明过得局部变量都存储在堆栈上。
例:
#include<stdio.h>
intcount; //全局变量
voidfunc1(void);
intmain()
{
count=100;
func1();
return0;
}
voidfunc1(void)
{
intcount; //局部变量
for(count =1; count <10; count++)
{
putchar('.');
}
}
在这个例子中count被定义了两次,一次是全局变量,一次是局部变量,当全局变量和局部变量重名时,在局部变量声明的区域内我们以局部变量作为引用对象,并且再次期间对于全局变量没有任何影响。
形式参数:形式参数出现在函数内,当函数要接受实参时,必须声明接受实参的变量,这些变量就是形参,同局部变量一样,形参再出了函数之后就被销毁。
1 0
- 全局变量,局部变量和形式参数
- 关于局部变量、全局变量、形式变量和实参变量
- 关于局部变量,形式参数和全局变量在代码块中的作用域
- js的局部变量和全局变量的定义形式举例
- 局部变量和全局变量
- 局部变量和全局变量
- 全局变量和局部变量
- 局部变量和全局变量
- 全局变量和局部变量
- 局部变量和全局变量
- 全局变量和局部变量
- 全局变量和局部变量
- 局部变量和全局变量
- 全局变量和局部变量
- 全局变量和局部变量
- 全局变量和局部变量
- 全局变量和局部变量
- 局部变量和全局变量
- Animation之tween动画
- python中的装饰器Decorator用法
- Linux文件编程综合(创建打开等)
- C语言32个关键字
- 刚刚开始学习编程
- 全局变量,局部变量和形式参数
- [1194]:Beat the Spread!
- 浮点数的比较
- C++有子对象的派生类的构造函数
- iOS上传文件(图片)之AFNetworking 3.0上传文件上传图片
- 声明,定义,赋值,初始化的区别
- mybatis 传入int=0 小坑
- 线程控制 - _beginthreadex的封装类
- ArrayList和Vector的区别