局部变量是指在函数内部定义的变量 ,作用域为定义局部变量的函数,也就是说他只能在定义他的函数中使用,最值得注意的是 只有在程序执行到定义他的模块时才能生成,一旦执行退出该模块则起变量消失。
局部变量(Local variables)指在程序中只在特定过程或函数中可以访问的变量。局部变量是相对于全局变量而言的。在C++、C#、Ruby这些面向对象语言中,一般只使用局部变量。面向对象编程是现在普遍采用的是软件开发方法,因此无需考虑是局部变量还是全局变量,说到变量,往往都是局部变量。
局部变量,在程序中,只在特定的过程或函数中可以访问的变量,是相对与全局变量而言的。
全局变量,在函数内定义的变量是局部变量,而在函数之外定义的变量称为外部变量,外部变量是全局变量,是在函数的外部定义的,它的作用域为从变量定义处开始,到本程序文件的末尾。全局变量全部存放在静态存储区,在程序开始执行时给全局变量分配存储区,程序行完毕就释放。
和全局变量的联系:局部变量可以和全局变量重名,但是局部变量会屏蔽全局变量。在函数内引用这个变量时,会用到同名的局部变量,而不会用到全局变量。 不同函数中可以使用相同名字的变量,它们代表不同的对象,互不干扰。
存储方式:静态存储方式与动态存储方式(具体:自动的、静态的、寄存器的register、外部的extern)
静态存储方式:在程序运行期间,系统对变量分配的固定空间。
动态存储方式:在程序运行期间,系统对变量分配的动态空间。
用static来声明静态局部变量,局部变量的值在函数结束后不消失而保留原值,即其占用的存储单元不释放,在下一次该函数调用时,该变量保留上次函数调用结束时的值。静态局部变量的默认值为0。
动态的局部变量当函数体被调用完毕时,变量的空间被释放。
示例:
1. 局部变量nCode仅仅在内部 {} 才生效,出了大括号即被销毁
2.局部变量nTemp可以在内部{}修改,效果作用到nTemp的作用域。