全栈博客园 全栈博客园全栈博客园

c言语extern,什么是extern关键字?

在C言语中,`extern` 关键字用于声明一个变量或函数在其他当地现已界说了。这意味着`extern`关键字声明的变量或函数的存储空间在其他文件中,而不是在当时文件中。运用`extern`关键字能够让咱们在多个文件中同享同一个变量或函数。

运用`extern`关键字的原因

1. 模块化编程:经过运用`extern`关键字,咱们能够将代码分割成多个模块,每个模块都能够包括自己的变量和函数。这有助于代码的安排和保护。2. 防止重复界说:当咱们需求在多个文件中运用同一个变量或函数时,运用`extern`关键字能够防止重复界说,然后削减过错和抵触。3. 跨文件拜访:`extern`关键字答应咱们拜访在其他文件中界说的变量和函数,这关于完结杂乱的程序结构十分有用。

示例

假定咱们有两个文件:`main.c` 和 `utils.c`。

在 `utils.c` 文件中,咱们界说了一个全局变量和一个函数:

```c// utils.c

int globalVar = 10;

int add { return a b;}```

在 `main.c` 文件中,咱们需求运用 `utils.c` 中界说的变量和函数。为此,咱们需求在 `main.c` 文件中声明这些变量和函数:

```c// main.c

include

extern int globalVar; // 声明外部变量extern int add; // 声明外部函数

int main { printf; printfqwe2; return 0;}```

为了使 `main.c` 能够找到 `utils.c` 中界说的变量和函数,咱们需求在编译时链接这两个文件。这通常是经过在编译指令中指定两个文件的称号来完结的。

注意事项

1. 当运用`extern`关键字声明一个变量时,该变量有必要是全局变量。局部变量不能被`extern`关键字声明。2. 当运用`extern`关键字声明一个函数时,不需求指定函数的回来类型和参数类型。编译器会主动从函数界说中获取这些信息。3. 运用`extern`关键字声明的变量和函数有必要在其他当地界说。假如未界说,则会导致链接过错。

经过运用`extern`关键字,咱们能够完结跨文件的变量和函数同享,然后进步代码的可读性和可保护性。

深化了解C言语中的“extern”关键字

什么是extern关键字?

在C言语编程中,“extern”是一个关键字,用于声明一个现已在其他当地界说的变量或函数。它的首要效果是告诉编译器,某个变量或函数的界说坐落当时文件之外,编译器需求在链接阶段找到这个变量或函数的实践界说。

extern关键字的效果

1. 声明全局变量

当你在某个文件中界说了一个全局变量,并期望在另一个文件中运用这个变量时,能够在第二个文件中运用“extern”关键字来声明这个变量。这样,编译器就会在链接阶段查找这个全局变量的界说。

2. 声明函数

假如你在一个文件中界说了一个函数,并期望在另一个文件中调用这个函数,能够在第二个文件中运用“extern”关键字来声明这个函数。不过,通常情况下,函数的声明现已包括在头文件中,所以直接包括头文件即可。

extern关键字的运用场景

1. 声明全局变量

以下是一个运用“extern”关键字声明全局变量的比如:

```c

// file1.c

int globalVar = 10;

// file2.c

include

extern int globalVar;

void printGlobalVar() {

printf(\

未经允许不得转载:全栈博客园 » c言语extern,什么是extern关键字?