平特心水报图
新網絡營銷基礎與實踐

你的位置:首頁 >網絡營銷 >c語言static

c語言static

C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。

盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規格寫出的C語言程序可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平臺。

二十世紀八十年代,為了避免各開發廠商用的C語言語法產生差異,由美國國家標準局為C語言訂定了一套完整的國際標準語法,稱為ANSI C,作為C語言最初的標準。

1、C語言是一個有結構化程序設計、具有變量作用域(variable scope)以及遞歸功能的過程式語言。

2、C語言傳遞參數均是以值傳遞(pass by value),另外也可以傳遞指針(a pointer passed by value)。

3、不同的變量類型可以用結構體(struct)組合在一起。

4、只有32個保留字(reserved keywords),使變量、函數命名有更多彈性。

5、部份的變量類型可以轉換,例如整型和字符型變量。

6、通過指針(pointer),C語言可以容易的對存儲器進行低級控制。

7、預編譯處理(preprocessor)讓C語言的編譯更具有彈性。

像在VB,C#,C,C++,Java中我們可以看到static作為關鍵字和函數出現,在其他的高級計算機語言如FORTRAN、ALGOL、COBOL、BASIC、LISP、SNOBOL、PL/1、Pascal、PROLOG、Ada等語言中也是有出現的,只是有著不同的作用,對于其具體作用,讀者有需要的時候是可以具體查閱的。

1、變量會被放在程序的全局存儲區中,這樣可以在下一次調用的時候還可以保持原來的賦值。這一點是它與堆棧變量和堆變量的區別。

2、變量用static告知編譯器,自己僅僅在變量的作用范圍內可見。這一點是它與全局變量的區別。

1、隱藏:當我們同時編譯多個文件時,所有未加static前綴的全局變量和函數都具有全局可見性。

2、保持變量內容的持久:存儲在靜態數據區的變量會在程序剛開始運行時就完成初始化,也是唯一的一次初始化。共有兩種變量存儲在靜態存儲區:全局變量和static變量,只不過和全局變量比起來,static可以控制變量的可見范圍,說到底static還是用來隱藏的。

3、默認初始化為0:其實全局變量也具備這一屬性,因為全局變量也存儲在靜態數據區。在靜態數據區,內存中所有的字節默認值都是0x00,某些時候這一特點可以減少程序員的工作量。比如初始化一個稀疏矩陣,我們可以一個一個地把所有元素都置0,然后把不是0的幾個元素賦值。如果定義成靜態的,就省去了一開始置0的操作。再比如要把一個字符數組當字符串來用,但又覺得每次在字符數組末尾加’\0’太麻煩。如果把字符串定義成靜態的,就省去了這個麻煩,因為那里本來就是’\0’。

總結:首先static的最主要功能是隱藏,其次因為static變量存放在靜態存儲區,所以它具備持久性和默認值0。

描述varname必需的。變量的名稱;遵循標準變量命名約定。

subscripts可選的。數組變量的維數;最多可以定義60維的多維數組。

如果不顯式指定lower,則數組的下界由Option Base語句控制。如果沒有Option Base語句則下界為 0。

New可選的。用它可以隱式地創建對象的關鍵字。如果使用New聲明對象變量,則在第一次引用該變量時將新建該對象的實例,因此不必使用Set語句來對該對象引用賦值。New關鍵字不能用來聲明任何內部數據類型的變量,也不能用來聲明從屬對象的實例。

type 可選的。變量的數據類型;可以是Byte、Boolean、Integer、Long、Currency、Single、Double、Decimal(目前尚不支持)、Date、String(對變長的字符串)、Object、Variant、用戶定義類型或對象類型。所聲明的每個變量都要有一個單獨的 As type 子句。

當一個源程序由多個源文件組成時,C語言根據函數能否被其它源文件中的函數調用,將函數分為內部函數和外部函數。

內部函數(又稱靜態函數):如果在一個源文件中定義的函數,只能被本文件中的函數調用,而不能被同一程序其它文件中的函數調用,這種函數稱為內部函數。定義一個內部函數,只需在函數類型前再加一個“static”關鍵字即可。

使用內部函數的好處是:不同的人編寫不同的函數時,不用擔心自己定義的函數,是否會與其它文件中的函數同名,因為同名也沒有關系。

外部函數:在定義函數時,如果沒有加關鍵字“static”,或冠以關鍵字“extern”,表示此函數是外部函數。

static只能在sub或function過程中使用,在退出sub或function過程后變量的值保留;dim使用在sub或function過程中時,退出sub或function過程后變量的值不保留。

Static語句與Static關鍵字很相似,但是針對不同的效果來使用的。如果使用 Static 關鍵字來聲明一個過程,則該過程中的所有局部變量的存儲空間都只分配一次,且這些變量的值在整個程序運行期間都存在。對非靜態過程而言,該過程每次被調用時都要為其變量分配存儲空間,當該過程結束時都要釋放其變量的存儲空間。Static語句則用來在非靜態的過程中聲明特定的變量,以使其在程序運行期間能保持其值。

在初始化變量時,數值變量被初始化為0,變長的字符串被初始化為一個零長度的字符串,而定長的字符串則用0填充。Variant 變量被初始化為Empty。用戶自定義類型的變量的每個元素作為各自獨立的變量進行初始化。

如果在過程中使用Static語句,應和其它的聲明語句(如Dim)一樣將其放在過程的開始。

網絡營銷詞典內容均由網友提供,僅供參考。

平特心水报图 一圈到底游戏规则 苹果手机赚钱软件祝福 竞彩自由过关投注选项 彩51苹果app下载 弄犬舍养什么狗赚钱 500元倍投方案稳赚陷阱 赛车直播观看 幸运北京pc28预测大 开淘宝店后怎么赚钱吗 辽源凌龙棋牌官网