91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

c語言extern關鍵字詳解

發布時間:2020-07-21 22:55:12 來源:網絡 閱讀:556 作者:GuangYao_Li 欄目:編程語言

在c語言中代碼的執行順序是從上往下執行的,如果定義的函數或者變量在調用之后,那么調用的時候編譯就會找不到需要使用的變量。這樣就會出現錯誤,如下代碼:


#include<stdio.h>

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

int num =5;

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

執行這句代碼就會出現錯誤,錯誤原因就是因為,num和funcion函數定義在main函數的下面導致main函數中執行num和function的時候編譯器并沒有編譯到那里所有編譯器就會認為沒有定義num和function 函數所以會出現錯誤。那么我可以使用extern關鍵字來改正個問題。extern關鍵字可以 讓變量全局化。

#include<stdio.h>

extern int num ;
void function();

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

int num =5;

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

這樣就可以正常運行了。extern 關鍵字還可以調用其他.c文件中的變量和函數 如下:

test_extern.c

#include<stdio.h>

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

void func(){
    printf(" 調用 test_extern函數!!\n ");
}

test_main.c

#include<stdio.h>

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;
}

執行上面代碼就可以在test_main文件中打印出test_extern文件中的字段和方法。這樣寫有一個好處就是可以不用再文件中因為別的 .h頭文件,因為如果引用.h頭文件就可以調用.h文件中所有的函數和字段,這樣不是很安全,所以如果想代用另外一個.c源文件的函數時可以使用extern關鍵字來調用這樣提高 了函數的安全性。

總結:extern 有三種用三,在本文件中使變量全局化,調用其他源文件中的字段,調用其他源文件中的函數。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

静宁县| 宜都市| 广饶县| 金华市| 竹山县| 安多县| 乌苏市| 乌恰县| 石阡县| 汉阴县| 苍溪县| 扶沟县| 青岛市| 宁晋县| 炉霍县| 厦门市| 四子王旗| 娱乐| 理塘县| 五原县| 荥阳市| 象州县| 昌江| 肇州县| 嘉禾县| 华蓥市| 塔城市| 伊吾县| 托克逊县| 中宁县| 潮安县| 武定县| 越西县| 潜江市| 嘉善县| 启东市| 丽水市| 称多县| 安仁县| 抚宁县| 怀化市|