首頁 考試吧論壇 Exam8視線 考試商城 網絡課程 模擬考試 考友錄 實用文檔 求職招聘 論文下載 | ||
![]() |
2011中考 | 2011高考 | 2012考研 | 考研培訓 | 在職研 | 自學考試 | 成人高考 | 法律碩士 | MBA考試 MPA考試 | 中科院 |
|
![]() |
四六級 | 職稱英語 | 商務英語 | 公共英語 | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT 新概念英語 | 成人英語三級 | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學習 | 法語 | 德語 | 韓語 |
|
![]() |
計算機等級考試 | 軟件水平考試 | 職稱計算機 | 微軟認證 | 思科認證 | Oracle認證 | Linux認證 華為認證 | Java認證 |
|
![]() |
公務員 | 報關員 | 銀行從業資格 | 證券從業資格 | 期貨從業資格 | 司法考試 | 法律顧問 | 導游資格 報檢員 | 教師資格 | 社會工作者 | 外銷員 | 國際商務師 | 跟單員 | 單證員 | 物流師 | 價格鑒證師 人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業資格 | 廣告師職業水平 駕駛員 | 網絡編輯 |
|
![]() |
衛生資格 | 執業醫師 | 執業藥師 | 執業護士 | |
![]() |
會計從業資格考試(會計證) | 經濟師 | 會計職稱 | 注冊會計師 | 審計師 | 注冊稅務師 注冊資產評估師 | 高級會計師 | ACCA | 統計師 | 精算師 | 理財規劃師 | 國際內審師 |
|
![]() |
一級建造師 | 二級建造師 | 造價工程師 | 造價員 | 咨詢工程師 | 監理工程師 | 安全工程師 質量工程師 | 物業管理師 | 招標師 | 結構工程師 | 建筑師 | 房地產估價師 | 土地估價師 | 巖土師 設備監理師 | 房地產經紀人 | 投資項目管理師 | 土地登記代理人 | 環境影響評價師 | 環保工程師 城市規劃師 | 公路監理師 | 公路造價師 | 安全評價師 | 電氣工程師 | 注冊測繪師 | 注冊計量師 |
|
![]() |
繽紛校園 | 實用文檔 | 英語學習 | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲 |
2.3 變量
變量是程序執行時,其值允許改變的數據對象,用來存儲輸入數據、計算的中間結果和程序的最終結果等。
1.變量定義
變量用標識符命名,通過變量定義引入的變量名習慣用英文字母開頭,C系統可能也會預定義一些標記系統特性的變量,系統定義的變量習慣用下線字符開頭。變量的數據特性由變量定義時指定的類型確定。若定義指定數據類型的變量(即不在指定數據類型基礎上定義新數據類型的變量,如指定類型的指針、數組等),這種變量定義的句法為:
數據類型符變量名1,變量名2,……;
編繹系統根據變量的數據類型確定存放它的值所需要的內存字節數,變量值的內部表示形多也由其類型確定。
2.內部變量和外部變量
變量按其定義出現在程序中的位置不同分成兩類:在函數內定義的變量稱為內部變量,而在函數之外(函數之間)定義的變量稱為外部變量。
3.變量的存儲類型
系統按程序對計算機存儲空間使用的不同要求,將內存分成不同用途的塊,與計算機的寄存器一起將存儲空間分成不同類別。而C程序通過指定變量的存儲類表明變量的不同的使用要求,讓系統將變量分配于不同的內存塊或寄存器。如在上述變量定義形式中,還要指定變量的存儲類型,變量定義的形式為:
存儲類型符數據類型符變量名1,變量名2,…;
其中存儲類型有四種: auto(自動的)、static(靜態的)、register寄存器的)和 extem外部的)。
外部變量只允許被指定為靜態的,或不指定其存儲類型。內部變量可以被指定為自動的或靜態的、或寄存器的、或不指定存儲類型,若不指定存儲類型,它就是自動的。
自動變量是內部變量,在函數內或復合語句內定義,它們被分配在堆棧區。
靜態變量可以是內部變量,也可以是外部變量。靜態變量表示永久性和專用性,即在程序執行過程中一直存在,局限于定義它的函數(內部靜態變量)或局限于定義它的程序文件中那些函數(外部靜態變量)。靜態變量被分配在與程序相聯的內存數據區。
寄存器變量是函數的內部變量或參數,也是一種臨時性的變量。如因函數使用非常頻繁程序希望將它分配在寄存器,程序就可將變量指定為寄存器的,但編譯系統也可能把它當作動變量處理。
指定存儲類型是外部的,實際b是告訴編譯器,這個變量是一個外部變量,在這里要使它,而它的定義或在別的程序文件或在后面的程序段等別的地方。
4.變量的作用域和生存期
變量的使用要注意變量的作用域(可使用范圍)和生存期(存在的時間)。C語言規定,內部變量的作用域只局限于定義它的函數或復合語句。自動的內部變量是一種臨時性變量,函數被調用時分配,函數執行結束時釋放。而靜態變量在程序執行前分配,直至程序結束才釋放。由于靜態的內部變量在函數結束時,依舊保持存儲,函數上一次調用時留在內部靜態變量中的結果能被下一次調用時繼續使用。外部變量也在程序啟動前分配,直至程序執行結束釋放。普通的外部變量能提供別的源程序文件中的函數使用(要對它作外部說明);靜態的外部變量只能供定義它的源程序中的全部函數專用。由于外部變量能供整個程序使用,所以外部量不能重名。
5.變量定義初始化
變量定義是對變量的存儲空間提出一種要求,存儲空間分配后,變量的初值通常是不拔的。但程序可以要求系統在為變量分配存儲空間同時為變量設定初值,這就是變量定義初始化。在變量的定義形式中,在變量名之后接上“=初值表達式”,該初值表達式的值就作為該變量的初值。C語言另有約定,對于靜態變量和外部變量,若定義它們時未指定初值,系統給它們設置成全部二進位都是0的值。以下是各種變量定義的例子:
(l)定義整型,并對其初始化。
Short minInt =100;
int i= l,j= 2, k=3;
long p=-1L,q=1234567890L;
unsigned usi= 254u;
unsigned long up= 4294967295UL;
(2)定義字符型變量,并對其初始化。
char ch=’A’;
(3)定義實型(浮點型、雙精度型)變量,并對其初始化。
float f=1.23456f;
double d=1.2345678op87654;
相關推薦:北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |