亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用extern在源文件之間共享變量?

如何使用extern在源文件之間共享變量?

人到中年有點甜 2019-05-22 13:12:26
我知道C中的全局變量有時會有extern關鍵字。什么是extern變量?宣言是什么樣的?它的范圍是什么?這與跨源文件共享變量有關,但這是如何工作的?我在哪里用extern?
查看完整描述

4 回答

?
繁花如伊

TA貢獻2012條經驗 獲得超12個贊

extern變量是在另一個翻譯單元中定義的變量的聲明(由于sbi用于校正)。這意味著變量的存儲空間分配在另一個文件中。

假設你有兩個.c-files test1.ctest2.c。如果您在其中定義了一個全局變量int test1_var;test1.c并且您想要訪問此變量,test2.c則必須使用extern int test1_var;in test2.c。

完整樣本:

$ cat test1.c 
int test1_var = 5;$ cat test2.c#include <stdio.h>extern int test1_var;int main(void) {
    printf("test1_var = %d\n", test1_var);
    return 0;}$ gcc test1.c test2.c -o test
$ ./test
test1_var = 5


查看完整回答
反對 回復 2019-05-22
?
慕桂英3389331

TA貢獻2036條經驗 獲得超8個贊

我喜歡將extern變量視為您對編譯器的承諾。

遇到extern時,編譯器只能找到它的類型,而不是它“存在”的位置,因此它無法解析引用。

你告訴它,“相信我。在鏈接時,這個引用將是可解析的?!?/p>


查看完整回答
反對 回復 2019-05-22
  • 4 回答
  • 0 關注
  • 1071 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號