局部变量和全局变量
来源:互联网 发布:oracle导出整个数据库 编辑:程序博客网 时间:2024/05/19 23:00
一、局部变量
在一个函数内部定义的变量是内部变量,它只是在本函数范围内有效,也就是说只有在本函数内才能使用它们,在此函数以外是不能使用这些变量的。这称为“局部变量”。
说明:
(1)主函数中定义的变量(m,n)也只有在主函数中有效,而不因为在主函数中定义而在整个文件或程序中有效。主函数也不能使用其他函数中定义的变量。
(2)不同函数中可以使用相同名字的变量,它们代表不同的对象,互不干扰。例如:上面在在f1函数中定义了变量b和c,倘若在f2函数中也定义变量b和c ,它们在内存中占不同的单元。互不混淆。
(3)形式参数也是局部变量。例如上面f1函数中的形参a,也只在f1函数中有效。其他函数可以调用f1函数,但不能引用f1函数的形参a。
(4)在一个函数内部,可以在复合语句中定义变量,这些变量只在本复合语句中有效,这种复合语句也称为“分程序”活“程序块”。
二、全局变量
程序的编译单位是源程序文件,一个源文件可以包含一个或若干个函数。在函数内定义的变量是局部变量,而在函数之外定义的变量称为外部变量,外部变量是全局变量(也称全程变量)。全局变量可以为本文件中其他函数所共用。它的有效范围从定义变量的位置开始到本源文件结束。
p、q、c1、c2都是全局变量,但它们的作用范围不同,在main函数和f2函数中可以使用全局变量p、q、c1、c2,但在函数f1中只能使用全局变量p、q,而不能使用c1和c2。
在一个函数中既可以使用本函数中的局部变量,又可以使用有效的全局变量。
说明:
(1)设置全局变量的作用是增加了函数间数据联系的渠道。由于同一文件中的所有函数都能引用全局变量的值,因此如果在一个函数中改变了全局变量的值,就能影响到其他函数,相当于各个函数间有直接的传递通道。由于函数的调用只能带回一个返回值,因此有时可以利用全局变量增加函数间的联系渠道,通过函数调用得到一个以上的值。
为了便于区别全局变量和局部变量,在C程序设计人员中有一个不成文的约定(但非规定),将全局变量名的第一个字母用大写表示。
- 局部变量和全局变量
- 局部变量和全局变量
- 全局变量和局部变量
- 局部变量和全局变量
- 全局变量和局部变量
- 局部变量和全局变量
- 全局变量和局部变量
- 全局变量和局部变量
- 局部变量和全局变量
- 全局变量和局部变量
- 全局变量和局部变量
- 全局变量和局部变量
- 全局变量和局部变量
- 局部变量和全局变量
- 全局变量和局部变量
- 全局变量和局部变量
- 局部变量和全局变量
- 局部变量和全局变量
- Fragment
- Bitmap——读取本地路径转换成bitmap的方法,以及避免outmemory
- 国内著名IT公司(百度、搜狗、网易、新浪)2012校园招聘笔试、面试小结
- 在生产环境中遇到的案例来推测Linux文件系统保护机制
- C++之类的声明、定义、存储
- 局部变量和全局变量
- 关于this的解析
- BToj 1030 硬币问题 【DP-完全背包】
- muduo : TcpConnection's Read Buffer
- ofbiz和应用服务器结合
- How do I make Tomcat startup faster?
- 小甲鱼PE详解之区块描述、对齐值以及RVA详解(PE详解06)
- java微信硬件设备授权案例
- leetcode Find the Celebrity