当前位置: 首页 > article >正文

extern与static

文章目录

  • extern:
    • 1. 修饰函数
    • 2.修饰全局变量
  • static
    • 1.修饰局部变量
    • 2.修饰函数
    • 3.修饰全局变量

extern:

1. 修饰函数

同一个源文件夹下有多个源文件时,如果想要从当前源文件中调用另一个源文件的函数,应该在当前源文件调用函数前声明
(因为函数声明的函数原型默认是extern,不加也行,但编译器可能发出警告)

声明格式:extern 返回值类型 函数名(形式参数);
真实案例:extern int Add(int a,int b);

`Add函数没有在当前源文件内定义,但在同文件夹下另一源文件内定义过

2.修饰全局变量

调用其他源文件内的全局变量时,必须有extern修饰,否则无法识别标识符

static

1.修饰局部变量

将局部变量放到静态区,而不是栈区
没有static修饰的局部变量,进入函数时创建,退出函数时销毁
有static修饰的局部变量,第一次进入函数时创建,退出函数时不销毁

2.修饰函数

将函数的外部链接属性改为内部连接属性,即非当前源文件内无法使用
被static修饰的函数

3.修饰全局变量

将全局变量的外部链接属性改为内部连接属性,即非当前源文件内无法使用
被static修饰的全局变量


http://www.kler.cn/news/353850.html

相关文章:

  • sd卡挂载返回FR_NOT_READY等错误
  • 我谈Sobel算子与高斯一阶微分的关系
  • 深入解析TensorFlow——从基础到进阶
  • 【C语言】结构体应用:统计成绩最低分
  • Linux MISC 驱动实验
  • Vue检测获取最新资源 解决浏览器缓存问题
  • CloseableHttpResponse 类(代表一个可关闭的 HTTP 响应)
  • 现在做一个产品级别的物联网智能应用,能链接wifi可以和chatgpt交互,做到实时语音交互的能力
  • Docker 的使用-01
  • 9.存储过程安全性博客大纲(9/10)
  • 双指针 — 复写零
  • tensorflow入门案例手写数字识别人工智能界的helloworld项目落地1
  • Spring 依赖注入(Dependency Injection)
  • Chrome(谷歌)浏览器 数据JSON格式美化 2024显示插件安装和使用
  • 3.3 Thymeleaf语法
  • 深入理解Qt中的QTableView、Model与Delegate机制
  • C++——vector的了解与使用
  • 易我数据恢复软件怎么样?2024四大数据恢复工具推荐!
  • 知识图谱融入向量数据库,带来RAG效果飞升
  • Java重修笔记 InetAddress 类和 Socket 类