keil怎么定義全局變量 C語言開發(fā)單片機為什么大多數(shù)都采用全局變量的形式?
C語言開發(fā)單片機為什么大多數(shù)都采用全局變量的形式?可能您看到的大多數(shù)應用程序都比較簡單,或者MCU的性能不強。為了減少調(diào)用函數(shù)導致的性能下降,請使用全局變量!第一,情況無話可說,問題不大。第二,也很普
C語言開發(fā)單片機為什么大多數(shù)都采用全局變量的形式?
可能您看到的大多數(shù)應用程序都比較簡單,或者MCU的性能不強。為了減少調(diào)用函數(shù)導致的性能下降,請使用全局變量
!第一,情況無話可說,問題不大。
第二,也很普遍。我認為這與歷史遺留的問題有關(guān)。主流MCU上的100m似乎已經(jīng)存在了大約15年。因此,人們普遍認為單片機的性能較差。每個人都會想到一種提高代碼效率的方法。全局變量的廣泛使用是應用最廣泛和最有效的一種!但這不符合PC應用程序程序員編寫的模塊化、高內(nèi)聚、低耦合的方法。不行,功能和性能只能優(yōu)先考慮
!您是否忽略了由這個全局變量引起的軟件風險以及開發(fā)和維護困難?當然不是。我們應該嚴格管理這些全局變量,給每個變量一個明確的定義、類型和函數(shù),這些都應該在文檔中明確描述!如果你理解了這樣一個文檔,你就會理解一半以上的軟件功能和框架(可能沒有框架),這樣開發(fā)和維護就可以繼續(xù)了。
回到現(xiàn)在,MCU的主頻超過1GHz。選擇200米以上的MCU非常容易,內(nèi)存為512KB。因此,MCU的全局變量也可以成為歷史。讓我們擁抱更合適的軟件開發(fā)思想和方法,模塊化和面向?qū)ο螅?/p>