當前位置:首頁 » 編程語言 » c語言中什麼是模塊化意識
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言中什麼是模塊化意識

發布時間: 2023-03-11 09:10:10

c語言模塊化程序設計

1.模塊化編程是指將一個龐大的程序劃分為若干個功能獨立的模塊,對各個模塊進行獨立開發,然後再將這些模塊統一合並為一個完整的程序。這是C語言面向過程的編程方法,可以縮短開發周期,提高程序的可讀性和可維護性。

2.在單片機程序里,程序比較小或者功能比較簡單的時候,我們不需要採用模塊化編程,但是,當程序功能復雜、涉及的資源較多的時候,模塊化編程就能體現它的優越性了。如前面我們寫過的HT1380驅動程序、獨立按鍵掃描程序和12864程序,每一個程序都是只用一個源文件編寫就能完成,但是,當您製作一個12864液晶日歷的時候,需要用到HT1380驅動程序、獨立按鍵掃描程序和12864顯示程序,如果把這三個程序全部集中在一個源文件里,將導致主體程序臃腫且雜亂,這樣做並非不可取,只是降低了程序可讀性、可維護性和代碼的重用率。如果把這三個程序當做三個獨立的模塊放到你的主體工程進行模塊化編程,效果就不一樣了。實際上,模塊化編程就是模塊合並的過程,就是建立每個模塊的頭文件和源文件並將其加入到主體程序的過程。主體程序調用模塊的函數是通過包含模塊的頭文件來實現,模塊的頭文件和源文件是模塊密不可分的兩個部分,缺一不可。所以,模塊化編程必須提供每個模塊的頭文件和源文件。

② c語言中是如何實現模塊化的

c語言是模塊化編程的工具,模塊如何組織,模塊之間如何交互應該是個大問題。我覺得有以下幾個值得注意的地方(不對的地方請大家指正):
1、每個源文件就是一個獨立的模塊,它應該能夠在不連接任何其它模塊、不需要其它源文件的情況下獨立編譯。
2、模塊之間是通過函數、常量、變數、結構定義、宏(似乎也是常量的一種)進行交互的
3、每個模塊應該包括導入和導出兩個部分,比如要調用另外一個模塊的函數foo(),需要
extern int foo();
這應該屬於模塊的導入部分
而由該模塊提供的函數,應該在相應的頭文件中聲明,作為模塊的導出部分。
模塊的導出部分應該放在該模塊的頭文件中。
4、如果只在本模塊使用的變數,在本模塊中定義成static的就可以了;否則就是全局變數,全局變數在頭文件中聲明一下,同時也作為模塊的導出部分。
5、宏既可以定義在頭文件中,也可以定義在源文件中。如果宏只是模塊中用到,相當於局部常量,放到源文件中好了;如果其它模塊也要用到,那麼把它放到頭文件中去。
6、結構定義似乎都放在頭文件中。是不是應該另外有一個頭文件,專門用來定義結構???

首先,我不知道自己的想法是否正確;其次,關於到底應該怎麼樣組織文件,我想應該也是有個標準的,可惜我沒找到這樣的資料。希望有高人能站出來指點一下,謝謝

③ C語言的模塊化編程還是不太理解,還請各位大神指點!

模塊化編程是為了更好的管理工程、方便以後移植代碼、使主函數或主文件(即有main函數的那個文件)變得簡單,因為我們讀代碼時一般都是從主函數開始讀的。
那怎麼進行模塊化呢?
簡單的就是一個功能包裝成一個函數,要實現什麼功能就調用哪個函數實現。
而復雜點的就是,一個功能模塊統一放一個C文件中,這個模塊相關的函數全部在這個C文件中實現,在主文件(即有main函數的C文件)想要使用這個模塊的功能函數,只需要包含它的頭文件就可以調用了。那頭文件就只是放這個功能模塊的函數聲明。
這樣子做,以後移植就方便多了。如果別的工程需要這個功能模塊,只需復制一下它的C文件已經H文件到這個工程目錄下,就能使用。
比如實現LCD描字、劃線、畫圓等等函數都放在一個叫做lcd.c的文件中,那就應該有一個叫做lcd.h的文件跟它對應,這個.h都是放這個.c文件對外函數的聲明。主文件的開頭出只需來一個#include"lcd.h"就可以調用這些畫圓劃線函數了。

④ 理解,談談C語言函數的作用以及如何做模塊化程序設計

C語言中的模塊化體現在兩個方面:
1 函數。函數是C語言的最小單位,每個函數均實現一個獨立的功能,於是每個函數均可以當做是一個最小的功能模塊。這樣,C語言就實現了最基本的模塊化。
2 文件。在C語言中,支持一個程序由多個源文件編譯,所以可以把類似功能的一組函數寫在同一個文件中,以源文件為單位,實現模塊化。當模塊較大時,可以寫在多個頭文件中,然後編譯成一個庫文件,以庫文件為單位,實現模塊化。

⑤ C語言的結構化和模塊化有什麼區別

結構化體現一種程序設計的思想,其基本原則是:從上到下,分而治之。
可以按照功能或其它原則把程序分成幾個部分,分別設計。進而組合在一起,這時要考慮幾個部分的通融性和兼容性。
模塊化更多的是考慮一個功能在不同的情況下的通用性,我的意思是比如你設計了一個功能,你需要保證它能適應於不同的情況,比如適應於不同的數據類型等等。

模塊化有點泛型的意思,就像系統提供的泛型函數,任何數據類型都可以調用的,另外,模塊化具有封裝性,需要把所設計的模塊封裝起來,對外只提供介面,其它部分只可以通過介面進行調用,因為考慮它的通用性,所以必須考慮它本身以及介面的通用性:它本身必須能夠處理任何數據類型,介面必須能夠接受和處理任何數據類型。

⑥ C語言如何進行模塊化編程

模塊化其實就是利用結構體、枚舉、指針、函數指針等將外設進行封裝,方便程序的閱讀、修改和後期的移植等操作