国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

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

2019-11-17 05:33:32
字體:
來源:轉載
供稿:網友

  C語言的基本組成單元是函數,各個函數之間可以相互引用。在學到靜態函數有時又將為內部函數和外部函數,即分別用static和extern說明的函數時,有不少人感到很迷惑:“外部”和“內部”到底是怎么一回事呢?
一般來說,我們編制的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及斷點設置等功能也可用于程序的調試中。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 若羌县| 扎赉特旗| 增城市| 成安县| 云林县| 马龙县| 卢氏县| 奉化市| 清水河县| 噶尔县| 桐梓县| 绥滨县| 滁州市| 永兴县| 永泰县| 普格县| 河曲县| 陆川县| 友谊县| 盐亭县| 浏阳市| 广灵县| 拜泉县| 锡林浩特市| 罗田县| 蒲江县| 保康县| 遵义市| 宁阳县| 白玉县| 榆中县| 陇川县| 小金县| 商都县| 独山县| 巴林左旗| 恩施市| 右玉县| 双城市| 营山县| 澄迈县|