c语言extern的用法
时间: 2023-07-02 15:04:40 浏览: 137
在C语言中,extern关键字的主要作用是用来声明外部变量、函数和全局变量。它的作用是告诉编译器这个变量或函数在别的文件中已经定义了,不需要再重新定义一遍。
具体来说,extern有以下两种用法:
1. 在一个文件中使用另一个文件中定义的全局变量或函数
如果在一个源文件中需要使用另一个源文件中定义的全局变量或函数,可以使用extern关键字来声明该变量或函数。例如:
```c
// file1.c
int count;
// file2.c
extern int count; // 声明在另一个文件中定义的count变量
```
这样,在file2.c中就可以使用count变量了。
2. 在头文件中声明全局变量或函数
如果一个全局变量或函数需要在多个源文件中使用,可以将其定义放在一个头文件中,并在多个源文件中包含该头文件。但是,由于头文件中的定义在每个包含它的源文件中都会被复制一遍,所以需要使用extern来避免重复定义。例如:
```c
// func.h 头文件
extern int add(int a, int b); // 声明add函数
// func.c 源文件
int add(int a, int b) {
return a + b;
}
// main.c 源文件
#include "func.h"
int main() {
int x = 1, y = 2;
int z = add(x, y);
return 0;
}
```
这样,在main.c中就可以使用func.h头文件中声明的add函数了。
相关问题
c语言extern用法
在C语言中,`extern`关键字用于声明一个全局变量或函数,表示该变量或函数在其他文件中定义。它告诉编译器该变量或函数的定义在其他地方,不需要在当前文件中进行定义。
使用`extern`关键字的一般语法如下:
```c
extern data_type variable_name;
extern return_type function_name(arguments);
```
对于全局变量,在一个源文件中使用`extern`关键字声明变量,表示该变量是在其他文件中定义的全局变量。这样,在当前文件中就可以使用该变量,而不需要重新定义它。例如:
```c
// File1.c
int globalVariable = 10;
// File2.c
extern int globalVariable; // 声明全局变量
int main() {
printf("%d\n", globalVariable); // 使用全局变量
return 0;
}
```
对于函数,在一个源文件中使用`extern`关键字声明函数,表示该函数是在其他文件中定义的函数。这样,在当前文件中就可以调用该函数,而不需要重新定义它。例如:
```c
// File1.c
#include <stdio.h>
void myFunction() {
printf("Hello, World!\n");
}
// File2.c
extern void myFunction(); // 声明函数
int main() {
myFunction(); // 调用函数
return 0;
}
```
通过使用`extern`关键字,可以将变量和函数的定义和声明分开,使得程序的结构更加清晰,并可以方便地在多个文件之间共享变量和函数。
c语言extern 用法
extern 是 C 语言中的一个关键字,用于声明一个变量或函数是在其他文件中定义的。它的作用是告诉编译器,这个变量或函数的定义在其他文件中,需要在链接时从其他文件中获取。例如,如果在一个文件中定义了一个全局变量,而在另一个文件中需要使用这个变量,就可以使用 extern 来声明这个变量,以便在链接时从定义它的文件中获取它的值。
阅读全文
相关推荐














