- 相關推薦
C語言關鍵字static的使用
static的作用,是為了模塊化設計而成立的,因為static的作用限定了變量或者函數能夠被訪問的作用域。下面是相關的知識,歡迎閱讀。
static 可以修飾變量和函數
1、static 修飾函數
函數的訪問范圍就被限定在本文件以內,任何本文件以外內容的訪問此函數,都是非法和無效的,編譯不會通過,提示找不到該符號。 所以,我們在進行一個函數設計的時候,首先需要考慮的就是,這個函數的作用是什么,作用范圍是什么,我們應該怎么去保證模塊化。如果沒有被外部文件訪問,那么就把它限定為static。這就是這個static 修飾函數的用處。
2、static 修飾變量
無論在文件的哪個位置,用static修飾 變量,這個變量運行時都是占用的RAM里的靜態全局數據區,再說一遍,靜態全局。在程序運行的整個生命周期內是不會釋放的,這個我們也在前面單片機相關的文章里講過了。
既然static 修飾的變量和全局變量占用一樣的空間,為何還有static修飾,直接全局變量也就OK了啊? 對于硬件來說,有沒有static自然是一樣的,但是對于軟件卻不一樣。
函數外static修飾的`變量,僅僅限定與本文件使用,所以你可以不關注本文件以外的信息,就知道這個變量是如何變化和使用的,這就減小了你閱讀程序的難度。
函數內static修飾的變量,僅僅限定于本函數使用,所以你可以不關注本函數以外的信息,就知道這個變量是如何變化的,進一步減小了你閱讀程序的難度,也方便查詢問題。
所以能定義為static的就盡量定義為static(后面會再更新如何去除static,書寫可重入函數)。
【C語言關鍵字static的使用】相關文章:
C語言關鍵字08-31
C語言關鍵字有哪些10-18
C語言的32個關鍵字07-06
C語言關鍵字RESTRICT介紹10-25
C語言關鍵字及其解釋06-01
C語言關鍵字const用法09-06
C語言的關鍵字知識要點11-02
c語言關鍵字大全(32個)06-24
C語言必須知道的關鍵字06-08
C語言中volatile關鍵字分析07-26