在一个源文件中引用另外一个源文件中定义的变量?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在一个源文件中引用另外一个源文件中定义的变量?相关的知识,希望对你有一定的参考价值。

addtwonum.c 文件代码:#include <stdio.h>/*外部变量声明*/extern int x ;extern int y ;int addtwonum() return x+y;test.c 文件代码:#include <stdio.h>/*定义两个全局变量*/int x=1;int y=2;int addtwonum();int main(void) int result; result = addtwonum(); printf("result 为: %d\n",result);return 0;为什么我的运行不下来?在线求解

参考技术A 在test.c中加一个引用
#include"addtwonum.c "
因为x,y,addtwonum函数都是在addtwonum.c文件中
这和调用库函数,写法差不多
#include<库文件>
然后调用库函数
/*************/
自定义库文件
引用用""
#include"自定义库文件"本回答被提问者采纳

在C的头文件中定义的结构体,如何在cpp文件中引用

解决方案1:在cpp文件中放置.c,且在该文件中引用变量

解决方案2:在一个cpp文件中包含.c,但在另一个cpp文件中使用结构体变量

cpp文件1

cpp文件2

#include "dialog3.h"
#include <QDebug>

extern "C"
{
    typedef struct PRINT
    {
        unsigned char Parameters;//BitDepthAC,BitDepthDC,q
        unsigned char PlaneCodes;//指定段的某一个位平面所有的码流
        unsigned char PlaneCodesSeparate;//指定段某个位平面的所有码流,不同的码字是分开的
        unsigned char PlaneIndex;
        unsigned char PlaHit;
        unsigned char AllCodesPrint;//所有的码流,并行,串行
        unsigned short SegIndex;
        unsigned char SegHit;
        unsigned int BlockIndex;
        unsigned char BlockHit;
        unsigned char BlockScanPrint;//指定段中某个块的扫描字
        unsigned char Option;
        unsigned char WordToCode;
        unsigned char BlockCodes;//single block
        unsigned char GagHit;
        unsigned int GagIndex;
        unsigned char BlockBeforeScan;
        unsigned char Header;
        unsigned char DC_DPCM;
        unsigned char DC_RiceCodes;
        unsigned char AC_Depth_DPCM;
        unsigned char AC_DepthRiceCodes;
        unsigned char DC_Additional;
        unsigned char DC_Refinement;
        unsigned char Stage1;
        unsigned char Stage2;
        unsigned char Stage3;
        unsigned char Stage4;
        unsigned char DWT_PRINT;
        unsigned char IDWT_PRINT;

        unsigned char PlaneTime_Print;
        unsigned char ScanTime_Print;

    }PrintPara; 

    extern PrintPara Print;

}

Dialog3::Dialog3(QWidget *parent)
    : QDialog(parent)
{
    ui.setupUi(this);

    ui.checkBox_3->setChecked(true);
    ui.checkBox_4->setChecked(true);
}

 

 

不知道是什么原因,但是实验证明可行

以上是关于在一个源文件中引用另外一个源文件中定义的变量?的主要内容,如果未能解决你的问题,请参考以下文章

c语言一个结构体如何在多个源文件里面调用?

C语言引用另一个源文件中定义的数组

C语言可以在不同的源文件中定义相同名字的全局变量吗

如何引用一个已经定义过的全局变量

C如何定义一个变量使他在其他源文件中也可以被使用同一个工程下

多个源文件共享同个变量的方法