现在的位置: 首页 > 综合 > 正文

C语言中static用法介绍

2014年01月02日 ⁄ 综合 ⁄ 共 675字 ⁄ 字号 评论关闭

转载地址:http://www.xker.com/page/e2009/0227/69692.html

对于新手来说,很多东西的用法还不是很清除,我们今天一起来看看C语言中static用法介绍

1、声明了static的变量称为静态变量,根据作用域的不同又分为静态局部变量与静态全局变量。其中静态局部变量是在函数内声明的static变量,静态全局变量是在函数外声明的static变量。虽然作用域不同,但是都是在编译期间分配内存,使用静态存储的方式(其值存放在静态存储区),在程序整个执行期间都是存在的。它们之间的区别是:

a、静态局部变量的作用域仅限于其所在的函数,在函数外无法对该变量进行访问。此外,该变量的值在该函数退出时依然存在,并且下次调用该函数时使用的是上次保存的值;

     b、静态全局变量的作用域仅限于其所在的文件模块,在其它文件模块中无法访问该变量。

2、声明了static的函数又称为静态函数或内部函数,其作用与静态全局变量差不多:其作用域仅限于其所在的文件模块,在其它文件模块中无法调用该函数(相对于其它文件块是不可见的);



     3、全局变量没有使用static关键字也是静态存储(其值存放在静态存储区),也是在编译时分配内存,并且其值在整个程序执行其间都是存在的。它与使用static关键字的静态全局变量唯一的不同在于作用域:它对其它文件模块是可见的,而静态全局变量只对其所在的文件模块可见。

PS:C语言中static 关键字的可见性作用 Java 等面向对象语言中的访问修饰符中 private 作用一样,类似于只在当前类是可见的,其他类是不可见。

抱歉!评论已关闭.