怎樣使C語言全域性變數在多個檔案中使用

2021-03-04 00:12:40 字數 919 閱讀 1867

1樓:謂之

extern 關鍵字

extern int i;這樣就可以在其他檔案中使用在標頭檔案中宣告版

a.hextern int i;

在其他某

個c檔案中定義權

int i =0;

其他要使用i變數的c原始檔只需要include"a.h"就可以

c語言中如何在多個檔案中引用同一個結構體

2樓:滄海雄風

把結構體定義在一個公共標頭檔案裡 然後都包含這個標頭檔案

3樓:匿名使用者

引用結構

來體有引用型別,和引用全域性自變數bai兩種方式。

1 引用型別。

需要du將結構體定義

zhi與標頭檔案中(.h檔案),然後在dao需要引用型別的原始檔(.c)中,均引用該標頭檔案,即可使用該型別。

2 引用全域性變數。

要引用全域性變數,需要先引用型別,之後在一個原始檔中定義全域性變數,在其它原始檔中宣告該全域性變數,即可使用。

比如結構體為struct test, 定義全域性變數為struct test glabol_test;

在其它檔案中,只需要

extern struct test globol_test;

即可在對應檔案宣告所在行之下進行呼叫。

ps:該宣告部分,也可以寫在定義結構體的標頭檔案中。

4樓:匿名使用者

在包含結構體的檔案開始加一行

#pragma once

這樣只編譯一次

5樓:匿名使用者

//file2.c

#include "file1.h"

#include "file3.c"

st gg;

C語言靜態區域性變數和全域性變數有什麼區別,不都是在整個程式中都

1 靜態區域性變數在函式內定義,但不象自動變數那樣,當呼叫時就存在,退出函式時就消失。靜態區域性變數始終存在著,也就是說它的生存期為整個源程式。2 靜態區域性變數的生存期雖然為整個源程式,但是其作用域仍與自動變數相同,即只能在定義該變數的函式內使用該變數。退出該函式後,儘管該變數還繼續存在,但不能使...

c語言中巨集替換與定義全域性變數的區別是什麼

全域性變數 是可以在程式中任何地方使用 而且是可以修改的 巨集定義也可以在任何地方使用 但是不能在之後修改 資料型別沒有限制的 巨集定義不分配記憶體,全域性變數定義分配記憶體。巨集定義的值在程式中是不能改變的,只是巨集替換,全域性變數的值是可以在程式中更改的。巨集定義不存在型別問題,它的引數也是無型...

在C語言賦值語句中,給多個變數賦值,用逗號隔開,豈不是相當於逗號表示式

不能那樣抄理解。逗號表示式 是已經襲宣告bai過的變數合法組成的du 多個有效運算zhi表示式用逗號隔開,dao而int a 1,b 2 只能有一種解釋,那就是宣告和初始化變數時可以把多個相同型別的變數用逗號隔開寫在同一個型別符後面,最後用分號結束。對上面的宣告,如果再宣告一個int c 那麼,c ...