c 中如何跨cpp檔案呼叫結構體變數

2022-02-21 19:06:00 字數 3343 閱讀 7569

1樓:匿名使用者

//可以用標頭檔案(拓展名為.h)將編輯好的結構體儲存下來。在呼叫時可以用#include語句呼叫。具體呼叫方法為:

#include《標頭檔案路徑+標頭檔案名.h>

//或者將標頭檔案放入dev-cpp資料夾下的include資料夾中,這樣可以不寫標頭檔案路徑:

#include《標頭檔案名.h>

//例如一個已儲存的標頭檔案全文如下(huge_number.h):

struct bignumber

;//將它放入dev-cpp\include中後在另一個檔案裡可以如此呼叫:

#include

//...

bignumber a;//於是a宣告為結構體變數

//還可以呼叫用標頭檔案中已經定義的函式、巨集定義、變數、常量等

//例如一個已儲存的標頭檔案全文如下(little_math.h):

#define rep(start,end) for(int i=start;i<=end;i++)

long long power(int base,int exp)

//將它放入dev-cpp\include中後在另一個檔案裡可以如此呼叫:

#include

#include

int main()

/*輸出結果為:14

27256

3125*/

2樓:匿名使用者

建立一個工程,把多個.cpp檔案新增進入,按built(構建),就能把工程裡各個.cpp連在一起。

3樓:

假如a.cpp中有個結構體struct a 需要在b.cpp中使用

b.cpp中加入extern struct a;就可以使用了

c++工程中如何在一個檔案中呼叫另一個檔案中的變數

4樓:小丁創業

實現的bai方法和操作步驟如du下:

1、首先, c++函式也存zhi儲在記憶體中,因此可以使用dao指標訪問內函式地址,如下圖

容所示,然後進入下一步。

2、其次,完成上述步驟後,宣告函式指標。該方法類似於函式原型。 以下是函式原型,如下圖所示,然後進入下一步。

3、接著,完成上述步驟後,在程式中宣告瞭一個函式指標,指標型別為整數,如下圖所示,然後進入下一步。

4、然後,完成上述步驟後,要獲取函式的地址,只需使用函式名稱即可,如下圖所示,然後進入下一步。

5、隨後,完成上述步驟後,使用函式指標來呼叫函式。與普通指標類似,可以使用(* fq)間接呼叫所指向的函式,如下圖所示,然後進入下一步。

6、最後,完成上述步驟後,在c++中,還可以使用函式指標,如函式名稱,如下圖所示。這樣,問題就解決了。

5樓:time大叔vs蘿莉

當專案中只有兩個檔案時:test_1.cpp 和 test_2.cpp

test_1.cpp:static int g_nnum;//在此檔案中定義一個全域性,但區域性可見的變數內,也就是static變數

//static看下

容最下方註釋

該檔案只需這一句**,不需要其他**,當然,你也可以新增其他**test_2.cpp://包含test_1.

cpp的頭,由於我們需要用到該檔案的全域性變數#include "test_1.cpp"

int main()

注:這裡涉及到static,static修辭一個區域性變數時,該變數的生命週期是全域性的,但可見性使區域性的,且工程中該值唯一;修辭全域性變數時,該變數生命週期全域性的,可見性也是全域性的,且工程中該值唯一;當修辭函式時,該函式全域性可見;

static關鍵字網上有很多大神講解過,我說的可能不是很詳細,可以自己去查一下。

6樓:匿名使用者

在b.cpp眉頭位置加入:#include "a.h",之後就可以在b.cpp中呼叫

7樓:匿名使用者

個人抄覺得famince的使用的方法不bai太好。

1. 假如你在a.cpp中有

du個變數的定義

int a = 0;

2. 在b.cpp中引用zhi,需要新增

extern int a;

這樣你dao就可以使用了。extern的作用是擴充套件a的作用域。

8樓:匿名使用者

或者用指標,再在另一個cpp中定義一個該類的指標,這樣來呼叫

9樓:匿名使用者

1:在a.h中:

extern宣告該變數,

2:在a.cpp中(包含a.h標頭檔案):

初始化,以及修改變數

3:在b.cpp中包含a.h標頭檔案,就可以使用,以此類推

10樓:匿名使用者

你可以看看extern

c++ 如何呼叫在另一個cpp檔案中例項化的類的例項中的函式

11樓:匿名使用者

假設要在類a裡呼叫類b的函式int f(x),兩種辦法:

1、class a::b 也就是說將b定義為a的父類, 這樣就可以自然的在a裡面用f(x)了

2、class a

int g(x)

也就是說可以在a裡面使用一個b的物件作為成員變數,這樣就可以用他的函式了

12樓:

直接傳啊,例項化都是分配地址的,在析構前都村在,和cpp沒關係

13樓:

問過老師了,好像不行,不過還是謝謝大家的幫忙

14樓:匿名使用者

你的類是在標頭檔案定義的吧?如果你不是,我建議你把類定義在標頭檔案,你這個類的函式本來就有個this指標,你直接把資料成員賦值給類b的成員部就行了嘛?

c++ 結構體之間的呼叫, 現在我用 【兩個檔案】 5

15樓:匿名使用者

最直接的做法

file2中如下操作:

struct a

; //與file1中相同的定義

struct b

第二種做法參照 倒黴熊lujin 的

16樓:朋御天下

在c++中,如果用型別宣告變數,則要有型別的完整定義。

如果定義的是指標或引用(即不需要編譯器知道型別大小)時候只需知道型別宣告。

你這種情況有兩種解決辦法:

1、在struct b定義檔案頭處新增預處理:#include2、將結構a和b放在一個檔案中,但a要先於b定義希望可以幫到您

C標頭檔案及函式呼叫的問題,如何在C 標頭檔案中定義函式,然後在原始檔中使用

c 的標頭檔案一般為變數宣告和函式宣告,巨集定義,以及include之類的東西。這些東西在matlab裡通通的不需要,變數可以直接拿來用。matlab的庫函式不用宣告也不用include都可以直接用。matlab裡自己定義的子函式只要將函式原始檔和主程式放在同一個工作目錄裡,就可以直接呼叫,不用宣告...

c 如何定義結構體佇列,c 如何定義一個結構體佇列

使用標準模板庫 stl 中的std queue就可以,不一定要用指標。比如 include struct mystruct int main 佇列的特徵是先進先出 fifo 所以push元素會放到隊尾,pop元素會取出隊頭。除此之外stl還提供了雙端佇列 deque 顧名思義,雙端佇列可以在佇列兩頭...

python如何在檔案中呼叫另檔案的類

如果是抄在同一個 module中 也就是同一個py 檔案裡 直接用就可以 如果在不同的module裡,例如 a.py裡有 class a b.py 裡有 class b 如果你要在class b裡用class a 需要在 b.py的開頭寫上 from a import a function.py d...