static 和 extern

外部函数:定义的函数能被本文件和其他文件访问,默认所有的情况都是外部函数,不允许有同名的外部函数
》》extern定义和声明一个外部函数(可以省略)
内部函数:定义的函数只能被本文件访问,其他文件不能访问,允许不同文件中有同名的内部函数
》》static:定义和声明一个内部函数
//完整的定义一个外部函数,默认情况下所有的函数都是外部函数,可以省略extern
extern void test(){
 
}
//定义一个内部函数
static void test(){
}
 
全局变量分2种:
外部变量:定义的变量能被本文件和其他文件访问
》》默认情况下,所有的全局变量都是外部变
》》不同文件中的同名外部变量,都代表着同一个变量
内部变量:定义的变量只能被本文件访问,不能被其他文件访问
》》不同文件中的同名内部变量,互不影响
extern int a;// 声明一个外部变量
static int b;// 定义一个内部变量
 
static 修饰局部变量:
1》延迟局部变量的生命周期:程序结束的时候,局部变量才会销毁
2》并没有改变局部变量的作用域
static 修饰局部变量的使用场合:
1,如果某个函数的调用频率特别高
2,这个函数内部的某个变量值是固定不变的

转载于:https://www.cnblogs.com/shuizhuqing/p/4454530.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值