extern和static的使用与区别

一、extern 关键字
1.extern概述
      extern关键字,一般用在变量名前或函数名前,使用extern的声明,让别的文件中能够使用全局变量或者函数。
2.extern用法
     声明外部变量或者函数:在文件1中声明一个变量或者函数,文件2中使用extern就可以引用该变量或者函数了。extern不能修饰局部变量。
      2.1 extern声明外变量:
      如文件2 main.c 想调用文件1 a.c 中的变量 int i,有4种方法:
      方法1:头文件a.h中,申明全局变量" extern int i;" ,文件1a.c 定义 "int i=1;"  ,文件2main.c 申明全局变量" extern int i;  " ,使用文件1中的i=1的值。

//1).a.h文件
extern int i; //声明
void fun();

//2).a.cpp文件1(或者其他文件b.cpp)。),无需添加#include "a.h",就可以使用全局变量i。
int i = 1; //定义
 
//3).main.cpp文件2 ,无需添加#include "a.h",就可以使用全局变量i。
#include <iostream>
extern int i; // 声明, 需要extern 声明变量,才能使用全局变量i。
int main()
{
	cout << "文件2使用文件1中的i值,i=" << i << endl;  //i=1
    system("pause");
    return 0;
}

方法2:头文件a.h中,申明全局变量" extern int i;" ,文件1a.c 定义 "int i=1;"  ,文件2main.c 加#include "a.h",使用文件1中的i=1的值。

//1).a.h文件
extern int i; //声明
void fun();

//2).a.cpp文件1(或者其他文件b.cpp),无需添加#include "a.h",就可以使用全局变量i。
int i = 1; //定义
 
//3).main.cpp文件2 ,添

相关推荐

  1. externstatic使用区别

    2024-03-13 06:12:03       22 阅读
  2. 深入理解C语言中 extern` static

    2024-03-13 06:12:03       9 阅读
  3. C单片机关键字externstatic const

    2024-03-13 06:12:03       39 阅读
  4. 慎用少用c++staticextern变量-几个常见错误

    2024-03-13 06:12:03       36 阅读
  5. conststatic区别

    2024-03-13 06:12:03       11 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-13 06:12:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-13 06:12:03       18 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-13 06:12:03       17 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-13 06:12:03       20 阅读

热门阅读

  1. linux Shell 命令行-05-test 检查某个条件是否成立

    2024-03-13 06:12:03       23 阅读
  2. 【理解机器学习算法】之KNN(纯Python)

    2024-03-13 06:12:03       19 阅读
  3. 【无标题】

    2024-03-13 06:12:03       18 阅读
  4. ElasticSearch 集群安装

    2024-03-13 06:12:03       18 阅读
  5. Idea、VsCode、WebStorm常用插件

    2024-03-13 06:12:03       28 阅读
  6. vue的生命周期有那些

    2024-03-13 06:12:03       28 阅读
  7. Spring Boot面试系列-03

    2024-03-13 06:12:03       18 阅读
  8. 张量维度改变总结

    2024-03-13 06:12:03       21 阅读
  9. C#/.Net 多线程下载m3u8视频

    2024-03-13 06:12:03       18 阅读
  10. uniapp相关内容

    2024-03-13 06:12:03       16 阅读
  11. adb shell 指令集

    2024-03-13 06:12:03       21 阅读