extern关键字

在C和C++中,extern 是一个关键字,用于声明一个全局变量或函数,表明它是在其他文件中定义的。extern 声明告诉编译器该变量或函数在当前文件中并没有定义,而是在其他文件中定义的。这使得在一个文件中可以引用另一个文件中定义的变量或函数。

1. extern 用于全局变量:

// File1.c
int globalVar = 42;

// File2.c
extern int globalVar;  // 声明 globalVar,告诉编译器它在其他文件中定义
// 使用 globalVar

在上面的例子中,extern int globalVar; 声明告诉编译器,globalVar 是在其他文件中定义的。这使得 File2.c 中可以使用 globalVar 而不会导致重复定义错误。

2. extern 用于函数声明:

// File1.c
void someFunction();  // 函数声明

// File2.c
extern void someFunction();  // 函数声明,告诉编译器它在其他文件中定义
// 使用 someFunction

与全局变量类似,extern 也可以用于函数声明,使得在一个文件中可以调用在其他文件中定义的函数。

3. extern 用于头文件:

通常,extern 与头文件一起使用,以便在多个文件中共享变量或函数的声明。头文件中包含了变量或函数的声明,而实际的定义则在一个或多个源文件中。

// header.h
#ifndef HEADER_H
#define HEADER_H

extern int globalVar;  // 在头文件中声明全局变量

void someFunction();  // 在头文件中声明函数

#endif // HEADER_H

然后在实际的源文件中包含头文件并进行定义:

// File1.c
#include "header.h"
int globalVar = 42;

// File2.c
#include "header.h"
void someFunction() {
    // 函数实现
}

这样可以确保在多个文件中使用相同的变量和函数声明,避免重复代码并保持一致性。

总体来说,extern 关键字用于告诉编译器某个变量或函数的定义在其他文件中,从而使得这些定义在不同文件中的源代码可以协同工作。

  • 9
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值