2013年8月31日 星期六

C語言當中的 extern 實例


在C語言當中,變數使用前要先宣告(declaration),而C 的 extern 關鍵字,用來表示此變數已經在別處定義(definition),然後告知Compiler要到別的地方找尋此變數的定義(可能在同一個檔案或其他檔案)。

但使用時要小心一點,在別的檔案定義變數只能夠定義一次,不然compiler會錯亂。

所以只要在程式裡面看到有使用 " extern " ,代表他是在別的程式有宣告到,而拿來用。

以下直接舉例子比較快,
這裡寫了三個程式,    a1.c 、 a2.c 、extern_test.c 。
分別如下:


a1.c











a2.c













extern_test.c















程式寫完之後,接著Compile,

$gcc   a1.c   a2.c   extern_test.c   -o  extern_test

注意到 -o 前面是輸入的檔案,-o後面的檔案為輸出的檔案,為binary file。

接著執行如下:









此範例是以外部宣告 function為例子 ,當然如果你只是要外部宣告為變數,我想不用再多說嚕!!

^_^

Reference:





沒有留言:

張貼留言