當前位置:首頁 » 編程語言 » c語言中的extern

c語言中的extern

發布時間: 2024-03-27 16:03:59

c語言中extern的意思是什麼

extern關鍵字可以置於變數或者函數前,以標示變數或者函數的定義在別的文件中,提示編譯器遇到此變數和函數時在其他模塊中尋找其定義。這里起到的是聲明作用范圍的用處。

extern的另外用法是當C和C++混合編程時假如c++調用的是c源文檔定義的函數或變數,那麼要加extern來告訴編譯器用c方式命名函數:

文檔A.cpp調用a.c裡面的變數i和函數callme()

添加了extern 「C」鏈接指示後,上面的代碼就能夠正常運行了。

⑵ C語言中全局變數說明符extern該如何使用

  1. 在C語言中,extern是全局變數聲明的關鍵字
    只要聲明全局變數就默認 前面加extern(程序員可以不加,但編譯器默認加上)

  2. 若本文件 引用別的文件中的全局變數 一定要加上extern 聲明一下,如

    在file1.c中定義的全局變數,file2.c中想要使用該變數,即使include了頭文件,但是如果沒有extern關鍵字來聲明的話,在file2.c中是無法訪問到的。

⑶ c語言中extern怎麼用,舉個簡單例子說明下,謝謝。

extern是外部聲明用的,用來聲明外部的函數或者變數定義。

例如,你在1.C中定義了一個函數和變數:
void fun1(void);
int a = 0;

而你要在2.c中調用 fun1(),並且蠢斗讀取a的值,
那麼需要再2.c的頭部如下外部聲明:
extern void fun1(void);
extern int a = 0;

這樣的敏檔鄭話在編譯器在編譯2.c時,不會報錯誤,而在鏈接時找橋頌fun1、a,以實現對外部函數、變數的訪問。

⑷ extern在c語言中是什麼意思

是一個修飾符。

在C語言中,修飾符extern用在變數或者函數的聲明前,用來說明「此變數/函數是在別處定義的,要在此處引用」。

extern可置於變數或者函數前,以表示變數或者函數的定義在別的文件中,提示編譯器遇到此變數或函數時,在其它模塊中尋找其定義。另外,extern也可用來進行鏈接指定。

⑸ C語言中,extern關鍵字怎麼使用最好解釋清楚一點。

extern可以置於變數或者函數前,以表示變數或者函數的定義在別的文件中,提示編譯器遇到此變數和函數時在其他模塊中尋找其定義。

現代編譯器一般採用按文件編譯的方式,因此在編譯時,各個文件中定義的全局變數是互相透明的,也就是說,在編譯時,全局變數的可見域限制在文件內部。
如果你定義A.cpp和B.cpp中都定義了全局變數i。那麼分別編譯,都可以通過,但是鏈接時就會報錯。
B.obj : error LNK2005: "int i" (?i@@3HA) already defined in A.obj

反之,如果我們希望A.cpp和B.cpp中使用的i是同一個i。也就是兩個文件,共同使用同一個全局變數。如果我們不在B.cpp中定義i。那麼編譯時就會報錯,提示
error C2065: 'i' : undeclared identifier
如果我們定義i就會出現上面所說的錯誤。

於是,我們需要extern關鍵字。告訴編譯器。這個i我們在別的模塊中定義過了。你要編譯的話,取別的模塊找一找。這樣程序就能夠自動去A.cpp中尋找i的定義。並且讓它在B.cpp中可以被使用。

熱點內容
zenly為什麼不能下載安卓機 發布:2024-11-28 18:59:05 瀏覽:295
怎麼把輔助放入伺服器 發布:2024-11-28 18:53:06 瀏覽:598
渲染器伺服器ip一定嗎 發布:2024-11-28 18:44:38 瀏覽:648
光遇的伺服器老是爆滿怎麼辦 發布:2024-11-28 18:41:10 瀏覽:714
sql最大日期的記錄 發布:2024-11-28 18:35:35 瀏覽:716
數據伺服器和電腦如何連接 發布:2024-11-28 18:06:49 瀏覽:745
怎麼讓編譯器輸出的字元相隔單位 發布:2024-11-28 18:04:25 瀏覽:524
w7電腦如何顯示配置 發布:2024-11-28 18:01:35 瀏覽:116
智通編譯股票股東 發布:2024-11-28 17:51:56 瀏覽:731
恥辱2低配置怎麼設置 發布:2024-11-28 17:51:50 瀏覽:92