117.info
人生若只如初见

C语言中extern详细用法解析

在C语言中,extern是一个关键字,用于声明外部变量和函数。

在C语言中,如果要在一个源文件中使用另一个源文件中定义的全局变量或函数,就需要使用extern关键字来声明这些变量或函数。extern关键字告诉编译器,这些变量或函数是在其他源文件中定义的,而不是当前源文件中定义的。

extern的用法分为两种情况:

  1. 声明全局变量:如果要在一个源文件中使用另一个源文件中定义的全局变量,就需要在使用的源文件中使用extern关键字来声明这个全局变量。例如,如果在源文件A中定义了一个全局变量int a;,在源文件B中要使用这个全局变量,就需要在源文件B中使用extern关键字进行声明:extern int a;。这样,编译器就知道在链接时要从其他源文件中找到这个全局变量的定义。

  2. 声明外部函数:如果要在一个源文件中调用另一个源文件中定义的函数,就需要在使用的源文件中使用extern关键字来声明这个函数。例如,如果在源文件A中定义了一个函数void func();,在源文件B中要调用这个函数,就需要在源文件B中使用extern关键字进行声明:extern void func();。这样,编译器就知道在链接时要从其他源文件中找到这个函数的定义。

需要注意的是,extern关键字只是一个声明,不是定义。它只是告诉编译器某个变量或函数在其他源文件中有定义,而不是在当前源文件中定义。因此,extern关键字不能初始化变量,也不能给函数提供函数体。变量的定义和函数的定义必须在其他源文件中进行。

总结来说,extern关键字的作用是告诉编译器某个变量或函数在其他源文件中有定义,以便在编译和链接时正确地引用这些变量或函数。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe077AzsLBgFVBVw.html

推荐文章

  • C语言获取数组长度的几种方法

    C语言获取数组长度的几种方法有: 使用sizeof运算符:可以使用sizeof运算符来获取数组的长度。例如,对于一个整型数组arr,可以使用sizeof(arr) / sizeof(arr[0]...

  • c语言运行后窗口不显示输出怎么解决

    如果你正在使用Windows操作系统,且使用的是命令行窗口来运行C语言程序,但是窗口运行后没有显示输出,可能有以下几个原因和解决方法: 程序没有正确输出内容:检...

  • c语言怎么获取鼠标当前位置

    在C语言中,要获取鼠标的当前位置,需要使用操作系统提供的相关函数。
    在Windows操作系统中,可以使用GetCursorPos函数获取鼠标的当前坐标。该函数的原型为...

  • c语言运行窗口闪退怎么解决

    出现C语言运行窗口闪退的情况,可能是由于代码中存在错误或者运行环境配置不正确所致。以下是一些可能的解决方法: 检查代码错误:确保代码没有语法错误或逻辑错...

  • java中stringBuilder的用法详解

    StringBuilder是Java中一个可变的字符串类,它是java.lang包中的一个类。它的主要作用是用于字符串的拼接操作,相对于String类的字符串拼接操作,StringBuilder的...

  • windows实现npm和cnpm安装步骤

    要在Windows上安装npm和cnpm,你可以按照以下步骤进行操作: 首先,你需要安装Node.js。你可以从Node.js官方网站 https://nodejs.org/en/ 下载适用于Windows的安...

  • 详解java中BigDecimal精度问题

    在Java中,使用BigDecimal类可以实现高精度的数学运算,防止由于浮点数精度问题导致的计算错误。然而,BigDecimal类的使用也可能会遇到精度问题,这是因为BigDec...

  • Shell脚本的超详细讲解

    Shell脚本是一种文本文件,包含了一系列的命令和控制结构,用于在Unix或类Unix操作系统上执行一系列的任务。下面是Shell脚本的超详细讲解: Shell脚本的创建和执...