extern例子
时间: 2023-07-26 07:07:54 浏览: 40
`extern` 是 C/C++ 中的一个关键字,用于声明一个变量或函数是在其他文件中定义的。它的作用是告诉编译器这个变量或函数是在别的文件中定义的,编译器在编译时不会为这个变量或函数分配内存。这样可以避免重复定义,同时也可以让多个源文件共享同一个变量或函数。
下面是一个使用 `extern` 的例子:
在文件 a.c 中:
```
int num = 10; // 定义一个全局变量 num
```
在文件 b.c 中:
```
#include <stdio.h>
extern int num; // 声明一个全局变量 num,它是在别的文件中定义的
int main() {
printf("num = %d\n", num); // 输出 num 的值
return 0;
}
```
在编译时需要将 a.c 和 b.c 编译成目标文件,然后将它们链接起来生成可执行文件。在链接时,编译器会找到 num 的定义,将其与引用它的文件进行连接。
以上代码中,使用 `extern` 声明了变量 num 是在别的文件中定义的,这样在 b.c 中就可以使用它,输出 num 的值。
相关问题
extern使用例子
extern是C/C++中的一个关键字,用于声明一个变量或函数是在其他文件中定义的。它的作用是告诉编译器在链接时在其他文件中寻找该变量或函数的定义。
下面是一个使用extern声明变量的例子:
在文件a.c中定义变量:
```
int a = 10;
```
在文件b.c中使用变量a:
```
extern int a;
printf("%d", a); // 输出10
```
在文件b.c中使用extern关键字声明变量a,这样编译器就知道变量a是在其他文件中定义的,链接时会在其他文件中寻找变量a的定义。
extern用法例子
extern是C语言中的一个关键字,用于声明一个全局变量、函数或者其他文件中定义的符号。
下面是一些extern的使用示例:
1. 声明全局变量:
```c
// 文件1.c
extern int global_var; // 在其他文件中定义的全局变量
// 文件2.c
int global_var = 10; // 定义全局变量
```
在文件1.c中使用extern关键字声明了一个全局变量global_var,该变量在文件2.c中定义。通过extern关键字,文件1.c可以访问并使用此全局变量。
2. 声明函数:
```c
// 头文件.h
extern void some_function(); // 声明在其他文件中定义的函数
// 文件.c
#include "头文件.h"
void some_function() {
// 函数定义
}
```
通过extern关键字,在头文件.h中声明了一个函数some_function(),然后在文件.c中定义了该函数。其他文件可以通过包含头文件.h来使用该函数。
3. 引用其他文件中的符号:
```c
// 头文件.h
extern int global_var; // 在其他文件中定义的全局变量
extern void some_function(); // 在其他文件中定义的函数
// 文件.c
#include "头文件.h"
void another_function() {
int x = global_var; // 使用全局变量
some_function(); // 调用函数
}
```
在头文件.h中使用extern关键字声明了一个全局变量global_var和一个函数some_function(),然后在文件.c中引用了这些符号。这样可以使文件.c中的函数能够使用其他文件中定义的全局变量和函数。
通过使用extern关键字,可以在一个文件中引用其他文件中定义的全局变量、函数或者其他符号,使得这些符号在整个程序中可见和可用。