真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

c語(yǔ)言extern關(guān)鍵字詳解

在c語(yǔ)言中代碼的執(zhí)行順序是從上往下執(zhí)行的,如果定義的函數(shù)或者變量在調(diào)用之后,那么調(diào)用的時(shí)候編譯就會(huì)找不到需要使用的變量。這樣就會(huì)出現(xiàn)錯(cuò)誤,如下代碼:

創(chuàng)新互聯(lián)建站主營(yíng)陽(yáng)西網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,app開(kāi)發(fā)定制,陽(yáng)西h5小程序制作搭建,陽(yáng)西網(wǎng)站營(yíng)銷(xiāo)推廣歡迎陽(yáng)西等地區(qū)企業(yè)咨詢(xún)


#include

int main(){
  printf("%d",num);
    function();
    return 0;
}

int num =5;

void function(){
   printf(" hello word main function\n");
}

執(zhí)行這句代碼就會(huì)出現(xiàn)錯(cuò)誤,錯(cuò)誤原因就是因?yàn)?,num和funcion函數(shù)定義在main函數(shù)的下面導(dǎo)致main函數(shù)中執(zhí)行num和function的時(shí)候編譯器并沒(méi)有編譯到那里所有編譯器就會(huì)認(rèn)為沒(méi)有定義num和function 函數(shù)所以會(huì)出現(xiàn)錯(cuò)誤。那么我可以使用extern關(guān)鍵字來(lái)改正個(gè)問(wèn)題。extern關(guān)鍵字可以 讓變量全局化。

#include

extern int num ;
void function();

int main(){
  printf("%d",num);
    function();
    return 0;
}

int num =5;

void function(){
   printf(" hello word main function\n");
}

這樣就可以正常運(yùn)行了。extern 關(guān)鍵字還可以調(diào)用其他.c文件中的變量和函數(shù) 如下:

test_extern.c

#include

int num =5;
int age=29;
char  name="make";

void func(){
    printf(" 調(diào)用 test_extern函數(shù)??!\n ");
}

test_main.c

#include

int main(){

   extern int num ;
     extern int age;
     extern char name;
     extern void func();

     func();
     printf("%d\n",num);
     printf("%d\n",age);
     pirntf("%s\n",name);

   return 0;
}

執(zhí)行上面代碼就可以在test_main文件中打印出test_extern文件中的字段和方法。這樣寫(xiě)有一個(gè)好處就是可以不用再文件中因?yàn)閯e的 .h頭文件,因?yàn)槿绻?h頭文件就可以調(diào)用.h文件中所有的函數(shù)和字段,這樣不是很安全,所以如果想代用另外一個(gè).c源文件的函數(shù)時(shí)可以使用extern關(guān)鍵字來(lái)調(diào)用這樣提高 了函數(shù)的安全性。

總結(jié):extern 有三種用三,在本文件中使變量全局化,調(diào)用其他源文件中的字段,調(diào)用其他源文件中的函數(shù)。


分享名稱(chēng):c語(yǔ)言extern關(guān)鍵字詳解
當(dāng)前URL:http://weahome.cn/article/jjspsj.html

其他資訊

在線咨詢(xún)

微信咨詢(xún)

電話咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部