变量存储方式——静态持续变量

来源:互联网 发布:数控如何编程 编辑:程序博客网 时间:2024/06/13 21:42

静态持续变量指全局变量或声明为static的变量。

1、静态持续性、外部链接性

     指全局变量,不加static关键字。这种变量具有外部链接性,即在其他文件中也可访问。但是要加extern关键字声明。例如文件一中有int  tom = 12;在文件二中要使用tom,要使用extern int tom;声明,然后再使用。

2、静态持续性、内部链接性

     指加上static的全局变量,这种变量指具有内部连接性,即仅在当前文件中可以访问。若局部代码块中有重名的变量,则会隐藏掉全局变量,这时候要使用全局变量,就要加上作用域解析操作符::,(例如 ::tom)

3、静态持续性、无链接性

     指声明在局部代码块(如一个函数体)中的加static的变量,这种变量虽然声明在局部空间,但是当局部块执行完成后,该变量的内存空间仍然存在,值也存在。

    例如:

void  dfef(){      static int total = 0;       total = total + 3;}
静态变量total尽在程序运行时被设置为0,以后多次函数调用之间,其值不会改变。例如第一次调用total变为3,第二次调用时,total不会重新置为0,而会变为6。