小编这次要给大家分享的是浅谈C语言静态关键字static,文章内容丰富,感兴趣的小伙伴可以来了解一下,希望大家阅读完这篇文章之后能够有所收获。
巫溪ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:13518219792(备注:SSL证书合作)期待与您的合作!
静态关键字static
C语言中,static关键字修饰变量和函数
1、局部变量
2、全局变量
3、函数
修饰局部变量
1、用静态关键字static修饰的局部变量,在编译的过程中,会在数据区为该变量开辟空间,并对其进行初始化,如果代码中未对其进行初始化,则系统默认初始化为0
2、用static修饰的局部变量,会延长局部变量的寿命,超出函数的生存期
3、对静态关键字修饰的局部变量的初始化
以下面两个变量a和变量为b进行说明,在编译过程中,发现变量a和b是静态变量,会标识变量a与b,等到程序运行的时候,在主函数调用之前,对变量a和变量b分配空间,并对变量a进行初始化,由于变量b是由函数fun传递的参数进行初始化的,故会在程序调用函数时对变量b进行初始化,对变量b初始化之前,会检查变量b的标识位,如果标识位为0,就会拿函数参数x对其进行初始化,标识位为1就不进行初始化
static int a = 0;
(编译过程进行初始化)
static int b = x;
(运行该代码的时候进行初始化)
void fun(int x) { static int a = 10; static int b = x; a++; b++; }
修饰全局变量变量
用静态关键字static修饰全局变量的意义、
可见性不一样,加上静态关键字后,只对当前文件有效,对其他文件无效,并且有效区间从定义位置开始,一直到本文件结束
修饰函数
静态关键字static修饰函数的意义
可见性不一样,在函数前加上静态关键字static,该函数也只能是当前文件可用,其他文件不可用
看完这篇关于浅谈C语言静态关键字static的文章,如果觉得文章内容写得不错的话,可以把它分享出去给更多人看到。