c語言是模塊化編程的工具,模塊如何組織,模塊之間如何交互應(yīng)該是個大問題。我覺得有以下幾個值得注意的地方(不對的地方請大家指正):

讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:域名與空間、虛擬主機、營銷軟件、網(wǎng)站建設(shè)、裕民網(wǎng)站維護、網(wǎng)站推廣。
1、每個源文件就是一個獨立的模塊,它應(yīng)該能夠在不連接任何其它模塊、不需要其它源文件的情況下獨立編譯。
2、模塊之間是通過函數(shù)、常量、變量、結(jié)構(gòu)定義、宏(似乎也是常量的一種)進行交互的
3、每個模塊應(yīng)該包括導(dǎo)入和導(dǎo)出兩個部分,比如要調(diào)用另外一個模塊的函數(shù)foo(),需要
extern int foo();
這應(yīng)該屬于模塊的導(dǎo)入部分
而由該模塊提供的函數(shù),應(yīng)該在相應(yīng)的頭文件中聲明,作為模塊的導(dǎo)出部分。
模塊的導(dǎo)出部分應(yīng)該放在該模塊的頭文件中。
4、如果只在本模塊使用的變量,在本模塊中定義成static的就可以了;否則就是全局變量,全局變量在頭文件中聲明一下,同時也作為模塊的導(dǎo)出部分。
5、宏既可以定義在頭文件中,也可以定義在源文件中。如果宏只是模塊中用到,相當于局部常量,放到源文件中好了;如果其它模塊也要用到,那么把它放到頭文件中去。
6、結(jié)構(gòu)定義似乎都放在頭文件中。是不是應(yīng)該另外有一個頭文件,專門用來定義結(jié)構(gòu)???
首先,我不知道自己的想法是否正確;其次,關(guān)于到底應(yīng)該怎么樣組織文件,我想應(yīng)該也是有個標準的,可惜我沒找到這樣的資料。希望有高人能站出來指點一下,謝謝
以函數(shù) 為小模塊。
以文件為中模塊。
若干個文件編譯成庫,形成大模塊。
這樣一級級的 實現(xiàn)模塊化。
C語言中的模塊化體現(xiàn)在兩個方面:
1 函數(shù)。函數(shù)是C語言的最小單位,每個函數(shù)均實現(xiàn)一個獨立的功能,于是每個函數(shù)均可以當做是一個最小的功能模塊。這樣,C語言就實現(xiàn)了最基本的模塊化。
2 文件。在C語言中,支持一個程序由多個源文件編譯,所以可以把類似功能的一組函數(shù)寫在同一個文件中,以源文件為單位,實現(xiàn)模塊化。當模塊較大時,可以寫在多個頭文件中,然后編譯成一個庫文件,以庫文件為單位,實現(xiàn)模塊化。
C語言中用函數(shù)來實現(xiàn)程序模塊。
模塊化程序設(shè)計是將一個大的任務(wù)分解成若干個小任務(wù),再將小任務(wù)分解成更小的任務(wù),直到每一個任務(wù)都只完成一個獨立功能。這樣的每個任務(wù)都叫做模塊,C語言中模塊是用函數(shù)來實現(xiàn)的。
借助函數(shù)來實現(xiàn)程序模塊化,把你想實現(xiàn)的功能用函數(shù)來實現(xiàn),不同功能的就用不同的函數(shù)來實現(xiàn),而且,函數(shù)在一定程度上可以被復(fù)用,所以稱為模塊,搜索零基礎(chǔ)學(xué)通C語言系列大全之線程_模塊兒_靜態(tài)庫_循環(huán)總結(jié)視頻教程就可以看了。
模塊化編程是為了更好的管理工程、方便以后移植代碼、使主函數(shù)或主文件(即有main函數(shù)的那個文件)變得簡單,因為我們讀代碼時一般都是從主函數(shù)開始讀的。
那怎么進行模塊化呢?
簡單的就是一個功能包裝成一個函數(shù),要實現(xiàn)什么功能就調(diào)用哪個函數(shù)實現(xiàn)。
而復(fù)雜點的就是,一個功能模塊統(tǒng)一放一個C文件中,這個模塊相關(guān)的函數(shù)全部在這個C文件中實現(xiàn),在主文件(即有main函數(shù)的C文件)想要使用這個模塊的功能函數(shù),只需要包含它的頭文件就可以調(diào)用了。那頭文件就只是放這個功能模塊的函數(shù)聲明。
這樣子做,以后移植就方便多了。如果別的工程需要這個功能模塊,只需復(fù)制一下它的C文件已經(jīng)H文件到這個工程目錄下,就能使用。
比如實現(xiàn)LCD描字、劃線、畫圓等等函數(shù)都放在一個叫做lcd.c的文件中,那就應(yīng)該有一個叫做lcd.h的文件跟它對應(yīng),這個.h都是放這個.c文件對外函數(shù)的聲明。主文件的開頭出只需來一個#include"lcd.h"就可以調(diào)用這些畫圓劃線函數(shù)了。
網(wǎng)頁題目:c語言中的函數(shù)模塊化 在C語言中程序的模塊化是利用函數(shù)實現(xiàn)的
網(wǎng)頁路徑:http://www.chinadenli.net/article32/dooegpc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、網(wǎng)站設(shè)計公司、標簽優(yōu)化、Google、自適應(yīng)網(wǎng)站、網(wǎng)站維護
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)