在c中extern的用法
时间: 2023-09-22 10:09:04 浏览: 80
在C中,`extern`关键字用于声明一个全局变量或函数,表示它们是在其他文件中定义的。具体来说,`extern`用于告诉编译器某个变量或函数的定义在其他地方,而不是当前文件中。
当你在一个文件中使用`extern`关键字声明一个变量时,编译器会知道该变量在其他文件中定义,并会在链接阶段解析它的引用。
下面是`extern`关键字的用法示例:
1. 声明全局变量:
```c
// 文件1:global.c
int global_variable; // 全局变量的定义
// 文件2:main.c
extern int global_variable; // 声明全局变量,告诉编译器它在其他文件中定义
int main() {
// 在这里可以使用 global_variable
return 0;
}
```
2. 声明函数:
```c
// 文件1:functions.c
void some_function(); // 函数的定义
// 文件2:main.c
extern void some_function(); // 声明函数,告诉编译器它在其他文件中定义
int main() {
// 在这里可以调用 some_function()
return 0;
}
```
通过使用`extern`关键字,我们可以在一个文件中引用另一个文件中定义的全局变量或函数,从而实现不同文件之间的数据或函数的共享和访问。
相关问题
c语言中extern的用法
在C语言中,extern关键字主要有两个用法:
1.在函数或变量的声明前加上extern关键字,表示该函数或变量是在其他文件中定义的,告诉编译器在链接时要在其他文件中寻找该函数或变量的定义。
2.在函数或变量的定义前加上extern关键字,表示该函数或变量是在其他文件中声明的,告诉编译器该函数或变量的定义在其他文件中,避免重复定义。
举个例子,如果在一个文件中定义了一个全局变量,而在另一个文件中需要使用该变量,就需要在使用该变量的文件中声明该变量为extern类型,以便编译器在链接时能够找到该变量的定义。
另外,使用extern关键字来引用函数比包含头文件要简洁,可以加速程序的编译过程,节省时间。但是,在大型C程序中,使用头文件来引用函数更为常见,因为头文件可以提供更多的信息,比如函数的参数类型和返回值类型等。
c语言中 extern 的使用方法3
在C语言中,`extern`关键字用于声明一个全局变量或者函数的声明,表示该变量或函数是在其他文件中定义的。`extern`的使用方法有以下三种情况:
1. 外部全局变量的声明:在一个源文件中使用`extern`关键字来声明一个全局变量,表示该变量是在其他文件中定义的。例如:
```c
// 文件1.c
extern int global_var; // 声明外部全局变量
// 文件2.c
int global_var = 10; // 定义外部全局变量
```
2. 外部函数的声明:在一个源文件中使用`extern`关键字来声明一个函数,表示该函数是在其他文件中定义的。例如:
```c
// 文件1.c
extern void function(); // 声明外部函数
// 文件2.c
void function() {
// 函数定义
}
```
3. 引用外部库函数:使用`extern`关键字可以引用外部库函数,这些函数通常包含在系统库或者第三方库中。例如:
```c
extern int printf(const char *format, ...); // 引用标准库函数printf
```
通过使用`extern`关键字,可以在当前文件中引用其他文件中定义的全局变量和函数,从而实现模块化编程和代码复用。
阅读全文