c语言extern作用

什么是extern关键字

C语言中,extern是一个关键字,用于向编译器声明在其他地方定义的全局变量或函数。如果在一个文件中定义了一个全局变量或函数,并且希望在另一个文件中使用它,那么就需要使用extern关键字。extern关键字的作用是告诉编译器,该变量或函数在其他文件中已经定义,不需要重新定义。

声明全局变量

当我们使用extern关键字声明全局变量时,其实是在告诉编译器该变量在其他地方已经定义了。这样,我们就可以在当前文件中使用这个全局变量,而不需要重新定义它。例如,我们有一个全局变量num,在另一个文件中定义了它,在当前文件中就可以通过extern关键字声明它,并使用它,如下所示:


// 在另一个文件中定义全局变量
int num = 10;

// 在当前文件中声明并使用全局变量
extern int num;
int main() {
    printf("num的值为:%d\n", num);
    return 0;
}

通过使用extern关键字声明全局变量,我们可以将多个文件中的数据进行共享。

使用extern声明函数

类似于声明全局变量,我们也可以使用extern关键字声明函数。这在项目中使用到多个源文件时非常常见。假设我们有两个文件,每个文件中都定义了一个函数,但是这两个函数又需要相互调用。为了实现函数之间的互相调用,我们需要在函数定义之前使用extern关键字进行声明。


// 文件1:func1.c
void func2(); // 声明函数

void func1() {
    printf("This is function 1.\n");
    func2(); // 调用函数
}

// 文件2:func2.c
extern void func1(); // 使用extern声明函数

void func2() {
    printf("This is function 2.\n");
    func1(); // 调用函数
}

// 主文件:main.c
extern void func1(); // 使用extern声明函数

int main() {
    func1(); // 调用函数
    return 0;
}

通过使用extern关键字声明函数,我们可以在不同的文件中实现函数之间的相互调用,实现模块化的程序设计。

总结来说,extern关键字在C语言中用于声明在其他文件中定义的变量或函数。通过使用extern关键字,我们可以在当前文件中使用这些全局变量或函数,而不需要重新定义它们。这样能够实现全局变量和函数的共享和模块化的程序设计。

本文来自投稿,不代表亲测学习网立场,如若转载,请注明出处:https://www.qince.net/cyuyan148p.html

郑重声明:

本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。

我们不承担任何技术及版权问题,且不对任何资源负法律责任。

如遇到资源无法下载,请点击这里失效报错。失效报错提交后记得查看你的留言信息,24小时之内反馈信息。

如有侵犯您的版权,请给我们私信,我们会尽快处理,并诚恳的向你道歉!

(0)
上一篇 2023年7月29日 上午1:24
下一篇 2023年7月29日 上午1:24

猜你喜欢