extern C功能代码及讲解
时间: 2024-05-04 18:18:52 浏览: 11
在C语言中,extern关键字用于表示一个变量或函数是在另一个源文件中定义的。当我们在一个源文件中使用一个在另一个源文件中定义的变量或函数时,需要使用extern关键字来告诉编译器该变量或函数是在其他文件中定义的。
下面是一个示例代码,其中定义了一个全局变量和一个函数,然后在另一个源文件中使用这个变量和函数:
```
// file1.c
#include <stdio.h>
int count = 0; // 定义全局变量
void increment() {
count++; // 定义函数
}
```
```
// file2.c
#include <stdio.h>
extern int count; // 声明变量
extern void increment(); // 声明函数
int main() {
increment(); // 调用函数
printf("count=%d\n", count); // 输出变量
return 0;
}
```
在上面的代码中,file1.c中定义了一个全局变量count和一个函数increment,file2.c中使用了这个变量和函数。我们需要在file2.c中使用extern关键字来声明这个变量和函数,以便编译器知道它们是在其他文件中定义的。
当我们编译并运行这个程序时,输出结果应该是:
```
count=1
```
这是因为我们在main函数中调用了increment函数,它增加了count变量的值,然后我们将count变量的值输出到控制台上。
总结一下,extern关键字在C语言中用于声明一个变量或函数是在另一个源文件中定义的。这对于在多个源文件中共享变量和函数非常有用。