static在c语言中是什么意思


本文摘自PHP中文网,作者angryTom,侵删。

static在c语言中是什么意思

c语言中,static用来说明静态变量。

1、如果是在函数外面定义的,那么其效果和全局变量类似,即static说明的变量可以在当前c程序文件中使用。

2、如果是在函数内部定义的,那么这个变量只初始化一次,即使再次调用这个函数,这个static变量也不会再次被初始化,于是,这个变量的取值就会一直保存着,我们再次调用该函数时,仍是保存的上一次函数调用时保存的结果。

推荐学习:c语言视频教程

在C语言中,static关键字的作用如下:

1、在修饰变量的时,static修饰的静态局部变量只执行一次,而且延长了局部变量的生命周期,直到程序运行结束以后才释放。

2、static修饰全局变量的时,这个全局变量只能在本文件中访问,不能在其它文件中访问,即便是extern外部声明也不可以。

3、static修饰一个函数,则这个函数的只能在本文件中调用,不能被其他文件调用。Static修饰的局部变量存放在全局数据区的静态变量区。

举例说明:

1

2

3

4

5

6

7

static int a;

int b;

void func(void)

{

    static int c;

    int d;

}

上面程序中,a与b都是全局变量,二者的区别是,b可以被别的文件使用,a只能在本文件中使用,这是static对全局变量的作用。
c和d的区别是,d是一个自动变量,func函数执行完后,d会自动被释放。但c却不会被释放,下一次调用func函数时,c的值会保留上次的值继续使用。

以上就是static在c语言中是什么意思的详细内容!

相关阅读 >>

c语言怎么合并两个有序链表

c语言自学要多久?

c语言如何输出玫瑰花数?(代码示例)

c语言程序总是从第一个定义的函数开始执行吗?

c语言中%是什么意思

c语言中的函数可不可以单独进行编译?

c语言如何读取txt文件内容?

在c语言中引用数组元素时,其数组下标的数据类型允许是什么

&&在c语言中是什么意思?

c程序的执行是从什么开始到什么结束?

更多相关阅读请进入《static》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...