溫馨提示×

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

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

C言語模塊化開辟(多文件編程)

發(fā)布時(shí)間:2020-07-02 04:05:35 來源:網(wǎng)絡(luò) 閱讀:361 作者:yuw2018 欄目:網(wǎng)絡(luò)安全

到今朝為止,我們編寫的大局部C言語程序都只包括一個(gè)源文件,沒有將代碼疏散到多個(gè)模塊中,關(guān)于只要幾百行的小程序來說這或答應(yīng)以承受,但關(guān)于動(dòng)輒上萬行的大中型程序,將一切代碼都集中在一個(gè)源文件中幾乎是一場災(zāi)害,后續(xù)瀏覽和保護(hù)都將稱為順手的成績。
在C言語中,我們可以將一個(gè).c文件稱為一個(gè)模塊(Module);所謂模塊化開辟,是指一個(gè)程序包括了多個(gè)源文件(.c 文件)以及頭文件(.h 文件)。
C言語代碼要經(jīng)由編譯和鏈接才干生成可履行程序:

  • 編譯是針對(duì)單個(gè)源文件(.c 文件)的,有若干個(gè)源文件就生成若干個(gè)目的文件,而且在生成進(jìn)程中不受其他源文件的影響。也就是說,每一個(gè)源文件多是自力編譯的。

  • 鏈接器的感化就是將這些目的文件拼裝成一個(gè)可履行程序,并為代碼(函數(shù))和數(shù)據(jù)(變量、字符串等)分派好虛擬地址,這和搭積木的進(jìn)程有點(diǎn)相似。


編譯的道理比擬復(fù)雜,觸及到少量的算法和正則表達(dá)式,進(jìn)修本錢較高,對(duì)模塊化開辟的協(xié)助也不大,所以本專題著墨不多。
進(jìn)修多文件編程,重點(diǎn)是要了解鏈接的進(jìn)程,恰是鏈接器將多個(gè)自力的模塊組分解一個(gè)可履行文件,在這個(gè)進(jìn)程中,有一些規(guī)矩必需恪守,有一些細(xì)節(jié)要惹起留意。
別的讀者還要了解頭文件的概念,曉得它的編碼標(biāo)準(zhǔn)以及引入方法


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI