externextern
时间: 2023-11-21 10:49:41 浏览: 41
extern关键字在C/C++中用于声明外部变量或函数。在使用extern关键字时,必须指定变量或函数的类型。对于全局变量,在外部使用时,必须使用extern关键字进行声明。如果变量没有使用extern修饰且没有显式初始化,就成为了变量的定义。对于函数的声明,extern关键字是可有可无的,因为函数本身默认是extern的。
使用extern关键字可以扩展全局变量的作用域,使其在其他文件中可见。当我们需要在当前文件中使用其他文件中定义的全局变量或全局函数时,需要先使用extern进行外部声明,然后才能在当前文件中使用该全局变量或全局函数。
以下是一个使用extern关键字的示例:
```cpp
// util.cpp
#include <iostream>
using namespace std;
int num = 20; // 全局变量
void fn() { // 全局函数
cout << num << endl;
}
// index.cpp
extern int num;
extern void fn();
int main() {
fn();
num = 100;
fn();
}
```
相关问题
extern char
extern char是C/C++中的关键字组合,用于声明一个全局变量或函数的外部链接性。它告诉编译器该变量或函数是在其他文件中定义的,而不是当前文件中定义的。
当使用extern char声明一个全局变量时,它表示该变量在其他文件中定义,并且可以在当前文件中使用。这样可以实现多个文件之间共享同一个全局变量。
当使用extern char声明一个函数时,它表示该函数在其他文件中定义,并且可以在当前文件中调用。这样可以实现多个文件之间共享同一个函数。
需要注意的是,extern char只是声明,不是定义。变量或函数的定义通常在其他文件中进行。
extern int
`extern int`是一种变量或函数声明,它表示该变量或函数在其他文件中定义。在当前文件中使用`extern int`声明的变量或函数,编译器会在链接时在其他文件中查找其定义。这种声明通常用于在多个文件中共享变量或函数。
例如,引用中的`extern int p(void);`声明了一个函数`p`,该函数在另一个文件中定义。在`main`函数中调用`p`函数时,编译器会在链接时查找`p`函数的定义。
另外,`extern int i;`声明了一个整型变量`i`,该变量在另一个文件中定义。在引用中,`int i = 3;`定义了变量`i`的值为3。在引用中,`i`变量被使用,编译器会在链接时查找`i`变量的定义。