extern 是什么
时间: 2024-05-13 18:12:49 浏览: 96
extern是C/C++语言中的一个关键字,用于声明一个变量或者函数是在其他文件中定义的,即该变量或函数是在其他文件中定义的全局变量或函数。在当前文件中,使用extern声明后可以引用其他文件中已定义的全局变量或函数。
例如,如果在一个.c文件中定义了一个全局变量,而在另一个.c文件中需要引用这个全局变量,那么就需要在第二个文件中使用extern关键字声明这个变量。
具体语法如下:
```
extern int global_variable; // 声明全局变量
extern void function_name(); // 声明函数
```
相关问题
extern是什么意思
### 回答1:
在C/C++中,extern是一个用于声明变量或函数的关键字,它表示这个变量或函数在其他地方已经定义过了,当前文件只是引用它,而不是定义它。使用extern关键字可以让多个文件共享同一个变量或函数,从而实现模块化编程和代码重用。
具体来说,当我们在一个文件中使用extern关键字声明一个变量或函数时,编译器会将它标记为外部变量或函数,表示这个变量或函数的定义存在于其他文件中。在编译过程中,编译器不会为这个变量或函数分配内存空间,因为它的定义不在当前文件中。相反,编译器会在链接过程中查找这个变量或函数的定义,然后将它们连接到一起,形成一个可执行文件。
例如,假设我们有两个文件a.c和b.c,它们都需要使用同一个全局变量x。我们可以在一个文件中定义这个变量(例如a.c),并在另一个文件中声明它(例如b.c):
```
//a.c
int x = 10; //定义全局变量x
//b.c
extern int x; //声明外部变量x
```
在b.c文件中使用extern关键字声明变量x时,编译器会知道这个变量的定义在其他文件中,并且会在链接时将它们连接起来,从而实现变量的共享。
### 回答2:
extern 是C语言中的一个关键字。它用于声明一个变量或函数是在其他源文件中定义的。简单来说,当我们在一个源文件中使用extern声明一个变量或函数时,它就可以被其他源文件中的定义所引用和调用。
在C语言中,源文件一般会被分为多个模块,每个模块有自己的独立作用。有时候,我们需要在一个模块中访问另一个模块中定义的变量或函数,这时就可以用到extern。因为不同的模块是分别编译的,所以要使用的变量或函数必须先进行声明,以便在连接的时候能够正确找到定义。
通过使用extern关键字,我们可以在使用变量或函数之前,用extern关键字声明它们的存在。这样,编译器就会知道这些变量或函数是在其他模块中定义的,同时也会在连接的时候找到它们的定义。这种机制使得我们可以更好地模块化代码,方便地在不同的模块之间进行交互和共享数据。
总结一下,extern在C语言中的作用就是用来声明在其他源文件中定义的变量或函数,以便在当前模块中使用。它提供了不同源文件之间进行变量和函数共享的机制,使得模块化的代码开发更加方便和灵活。
### 回答3:
extern是C/C++编程语言中的一个关键字,用于声明外部变量或函数。
在C/C++中,如果需要在某个源文件中使用其他源文件中定义的全局变量或函数,并且这些全局变量或函数的定义在其他文件中,则需要使用extern关键字进行声明。
对于变量而言,使用extern关键字声明时,可以用来引用其他文件中已定义的全局变量,如:
extern int global_var;
这表示global_var是在其他源文件中定义的全局变量,我们可以在当前文件中引用它,而不需要重新定义。
对于函数而言,使用extern关键字声明时,可以用来引用其他文件中已定义的函数,如:
extern void func();
这表示func()是在其他文件中定义的函数,我们可以在当前文件中调用它,而不需要重新定义。
另外,extern关键字也可以用来定义全局变量或函数,但是一般不推荐使用,因为会造成全局变量或函数的重复定义,应该将全局变量或函数的定义放在一个文件中。
总结起来,extern关键字的作用就是用来声明外部变量或函数,使得在一个源文件中可以使用其他文件中已定义的全局变量或函数。
C语言中 extern是什么意思
在C语言中,关键字extern用于声明一个变量或函数是在其他文件中定义的,而不是当前文件中定义的。它告诉编译器在链接时在其他文件中寻找该变量或函数的定义。extern通常用于在多个源文件中共享变量或函数的定义,以避免重复定义和减少代码冗余。在使用extern时,需要注意变量或函数的定义必须在其他文件中可见,否则会导致链接错误。
阅读全文