赞
踩
http://hi.baidu.com/sppeivan/blog/item/bb2e0cdc010abc3e5982dd03.html
在局部变量前加上“static”关键字,就成了静态局部变量。静态局部变量存放在内存的全局数据区。函数结束时,静态局部变量不会消失,每次该函数调用时,也不会为其重新分配空间。它始终驻留在全局数据区,直到程序运行结束。静态局部变量的初始化与全局变量类似.如果不为其显式初始化,则C++自动为其初始化为0。
静态局部变量与全局变量共享全局数据区,但静态局部变量只在定义它的函数中可见。静态局部变量与局部变量在存储位置上不同,使得其存在的时限也不同,导致对这两者操作 的运行结果也不同。 例如,下面的程序定义了全局变量、静态局部变量和局部变量: //********************* //** ch5_2.cpp ** //********************* #include <iostream.h> void func(); void main() void func() 运行结果为: 对静态局部变量的说明:
(4)※※※ 虽然静态局部变量在函数调用结束后仍然存在,但其他函数是不能引用它的,也就是说,在其他函数中它是“不可见”的。 |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。