模塊化編程是為了更好的管理工程、方便以后移植代碼、使主函數(shù)或主文件(即有main函數(shù)的那個文件)變得簡單,因為我們讀代碼時一般都是從主函數(shù)開始讀的。

創(chuàng)新互聯(lián)2013年至今,是專業(yè)互聯(lián)網(wǎng)技術服務公司,擁有項目成都網(wǎng)站制作、網(wǎng)站建設、外貿(mào)網(wǎng)站建設網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元袁州做網(wǎng)站,已為上家服務,為袁州各地企業(yè)和個人服務,聯(lián)系電話:18980820575
那怎么進行模塊化呢?
簡單的就是一個功能包裝成一個函數(shù),要實現(xiàn)什么功能就調(diào)用哪個函數(shù)實現(xiàn)。
而復雜點的就是,一個功能模塊統(tǒng)一放一個C文件中,這個模塊相關的函數(shù)全部在這個C文件中實現(xiàn),在主文件(即有main函數(shù)的C文件)想要使用這個模塊的功能函數(shù),只需要包含它的頭文件就可以調(diào)用了。那頭文件就只是放這個功能模塊的函數(shù)聲明。
這樣子做,以后移植就方便多了。如果別的工程需要這個功能模塊,只需復制一下它的C文件已經(jīng)H文件到這個工程目錄下,就能使用。
比如實現(xiàn)LCD描字、劃線、畫圓等等函數(shù)都放在一個叫做lcd.c的文件中,那就應該有一個叫做lcd.h的文件跟它對應,這個.h都是放這個.c文件對外函數(shù)的聲明。主文件的開頭出只需來一個#include"lcd.h"就可以調(diào)用這些畫圓劃線函數(shù)了。
模塊化是指一個程序包含多個源文件,比如.c或.h,每個文件可稱為一個模塊。
比如我寫了一個簡單例子
#include?stdio.h
extern?void?sayHello();
char?*str;
int?main()
{
str="hello?word!";
sayHello();
return?0;
}
#include stdio.h
void sayHello()
{
extern char *str; //引用main變量
printf("%s\n",str);
}
C語言中用函數(shù)來實現(xiàn)程序模塊。
模塊化程序設計是將一個大的任務分解成若干個小任務,再將小任務分解成更小的任務,直到每一個任務都只完成一個獨立功能。這樣的每個任務都叫做模塊,C語言中模塊是用函數(shù)來實現(xiàn)的。
借助函數(shù)來實現(xiàn)程序模塊化,把你想實現(xiàn)的功能用函數(shù)來實現(xiàn),不同功能的就用不同的函數(shù)來實現(xiàn),而且,函數(shù)在一定程度上可以被復用,所以稱為模塊,搜索零基礎學通C語言系列大全之線程_模塊兒_靜態(tài)庫_循環(huán)總結視頻教程就可以看了。
c語言是模塊化編程的工具,模塊如何組織,模塊之間如何交互應該是個大問題。我覺得有以下幾個值得注意的地方(不對的地方請大家指正):
1、每個源文件就是一個獨立的模塊,它應該能夠在不連接任何其它模塊、不需要其它源文件的情況下獨立編譯。
2、模塊之間是通過函數(shù)、常量、變量、結構定義、宏(似乎也是常量的一種)進行交互的
3、每個模塊應該包括導入和導出兩個部分,比如要調(diào)用另外一個模塊的函數(shù)foo(),需要
extern int foo();
這應該屬于模塊的導入部分
而由該模塊提供的函數(shù),應該在相應的頭文件中聲明,作為模塊的導出部分。
模塊的導出部分應該放在該模塊的頭文件中。
4、如果只在本模塊使用的變量,在本模塊中定義成static的就可以了;否則就是全局變量,全局變量在頭文件中聲明一下,同時也作為模塊的導出部分。
5、宏既可以定義在頭文件中,也可以定義在源文件中。如果宏只是模塊中用到,相當于局部常量,放到源文件中好了;如果其它模塊也要用到,那么把它放到頭文件中去。
6、結構定義似乎都放在頭文件中。是不是應該另外有一個頭文件,專門用來定義結構???
首先,我不知道自己的想法是否正確;其次,關于到底應該怎么樣組織文件,我想應該也是有個標準的,可惜我沒找到這樣的資料。希望有高人能站出來指點一下,謝謝
C語言中的模塊化體現(xiàn)在兩個方面:
1 函數(shù)。函數(shù)是C語言的最小單位,每個函數(shù)均實現(xiàn)一個獨立的功能,于是每個函數(shù)均可以當做是一個最小的功能模塊。這樣,C語言就實現(xiàn)了最基本的模塊化。
2 文件。在C語言中,支持一個程序由多個源文件編譯,所以可以把類似功能的一組函數(shù)寫在同一個文件中,以源文件為單位,實現(xiàn)模塊化。當模塊較大時,可以寫在多個頭文件中,然后編譯成一個庫文件,以庫文件為單位,實現(xiàn)模塊化。
標題名稱:函數(shù)模塊化C語言,函數(shù)與模塊化程序設計
標題路徑:http://chinadenli.net/article49/dsehjhh.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供微信公眾號、虛擬主機、ChatGPT、關鍵詞優(yōu)化、用戶體驗、網(wǎng)頁設計公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)