作用是:1、修饰函数;2、修饰局部变量;3、修饰全局变量。static函数与普通函数作用域不同,仅在本文件。只在当前源文件中使用的函数应该说明为内部函数(static修饰的函数),内部函数应该在当前源文件中说明和定义。
1、修饰函数
static函数与普通函数作用域不同,仅在本文件。只在当前源文件中使用的函数应该说明为内部函数(static修饰的函数),内部函数应该在当前源文件中说明和定义。这样做的好处是:其他文件中可以定义相同的名字,防止命名冲突.静态函数不能被其他文件所用。
2、修饰局部变量
对于修饰局部变量,当一个局部变量被static修饰后,它就类似于是一个全局变量,程序结束时才释放,它也储存在数据段
3、修饰全局变量
被static修饰的全局变量被称之为静态全局变量。静态全局变量和全局变量在存储方式上是一致的,都储存在数据段,编译阶段分配内存空间,在程序结束时释放。但是,对于多文件的程序来说,静态全局变量只在定义该变量的源文件内有效,也就是我们常说的它具有隐身属性。
延伸阅读:
什么是static关键字?
像在VB,C#,C,C++,Java,PHP,Objective-C,JavaScript中我们可以看到static作为关键字和函数出现,在其他的高级计算机语言如FORTRAN、ALGOL、COBOL、BASIC、LISP、SNOBOL、PL/1、Pascal、PROLOG、Ada等语言中也是有出现的,只是有着不同的作用,对于其具体作用,读者有需要的时候是可以具体查阅的。
C与C++#的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。
文章标题:C/C++中的static关键字有什么作用,发布者:小编,转载请注明出处:https://worktile.com/kb/p/40896