如何將多個C語言模塊組合成一個程序

一般來說,我們編制的C語言源程序都是放在一個擴展名爲.C的文件中,這對一個較簡單的程序是合適的,但對於大型項目就不合適了,其一,大項目往往由多人合作完成,大家都來
操作同一個文件極易出錯;其二,大文件的編譯、調試都極爲複雜;其三,如果兩個程序中都要用到同一個自定義的函數,此函數須從一文件移動到另一文件中,這種移動容易出錯。爲了解決這一矛盾,一個大的程序往往被分成幾個部分,存放在不同的DOS文件各。各個部分可以分開編輯、編譯,最後再把這幾部分鏈接成一個完整的程序。
  把一程序分成幾部分是有一定規則的。一個函數就不能分開在兩個文件中,也不能在兩個文件中都對其定義一次,因此每個文件都是由完整的對函數式變量的定義式說明組成的。對於某一文件中的函數,它可以直接引用本文件中所定義的函數和外部變量。如果要想引用別的文件中定義的函數或變量,則應在引用之前用extern,對此變量或函數進行說明。如果一個函數或外部變量在定義時前面加有static說明,那麼就只有本文件內的函數能夠使用它。習慣上,在每個文件的最前面放上不在此文件中的函數及變量的說明,由於對函數和變量的說明可以多次重複進行,往往建立一個頭文件,在其中放入所有外部變量和外部函數的說明並在每個說明前面加上extern,然後每個源文件的第一行都用include包含這個頭文件。
  對於每一個完整的源文件,都應該能夠單獨通過編譯,以便迅速改正其中的編輯錯誤。
Turbo c中,如果你選擇了編譯命令,它就編譯當前編輯窗口中的文件。對於被調用函數,可以編出簡單的調用函數對其可靠性進行測試,看它能不能完成預期的功能。
  在每一個文件都編好並且都通過了編譯之後,你需要建立一個項目文件,把所有的文件組合在一起進行鏈接。如果你使用的是Borland c++ 2.0以上的版本或MS C的高版本的話,可以看到其主菜單上有一個Project(項目)菜單,其中一項爲建立Project文件,選此命令,輸入項目文件名後即可直接從列出的目錄中選定組成項目的文件。但在Turbo C 2.0中,這個過程要複雜一些,下面我們來看一個例子。
  假設有一個程序,其中包含有main(),fun1(),fun2()三個函數及一個公用的外部變量
int a:我們把main()及a的定義放在文件F1.C中,而將fun1(),及fun2()的定義放在文件F2.C中,

F1.C
extern void fun1(int x);
extern void fun2(char c);
int a;
main()
{ fun1(5);
} fun2('A')
F2.C

extern int a;

void fun1(int x);

{…

a=a+x

}

void fun2(char c)

{…

}
  先應把F1.C和F2.C分別輸入計算機並編譯後存盤。然後選File菜單下NEW命令,建立一個新的文件,即項目文件,不妨取名爲MY.PRJ,其中只有兩行:
F1.C
F2.C
必要時,還應在文件名前加上盤符和路徑,存盤。然後打開Project菜單,選Project name.輸入名字MY.PRT。這時Turbo.C就知道當前要鏈接,運行的是一個由兩個文件組的程序。選擇RUN菜單下的RUN命令即可對兩個文件進行編譯、鏈接和運行的一體化操作。F4,F7,F8及斷點設置等功能也可用於程序的調試中。

 

返回

 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章