版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第第3 3章章 常量、變量與標(biāo)識符常量、變量與標(biāo)識符C語言中的數(shù)據(jù)包括常量和變量,作為操作對象的數(shù)據(jù)語言中的數(shù)據(jù)包括常量和變量,作為操作對象的數(shù)據(jù)都是以某種特定的形式存在的,可以用都是以某種特定的形式存在的,可以用C語言中的標(biāo)識符來語言中的標(biāo)識符來表示一個常量或者一個變量。表示一個常量或者一個變量。標(biāo)識符;標(biāo)識符;常量;常量;變量;變量;變量的初始化。變量的初始化。3.1 3.1 標(biāo)識符標(biāo)識符我們已經(jīng)知道在我們已經(jīng)知道在C語言中,數(shù)據(jù)在計算內(nèi)存中存儲的,語言中,數(shù)據(jù)在計算內(nèi)存中存儲的,程序設(shè)計中用到的數(shù)據(jù),要到計算機(jī)的內(nèi)存中讀取,因此需程序設(shè)計中用到的數(shù)據(jù),要到計算機(jī)的內(nèi)存中讀取,因此需要用到
2、一個符號來代表它,這里就是我們所要講的標(biāo)識符。要用到一個符號來代表它,這里就是我們所要講的標(biāo)識符。標(biāo)識符是指用來標(biāo)識常量名、變量名、函數(shù)名、數(shù)組標(biāo)識符是指用來標(biāo)識常量名、變量名、函數(shù)名、數(shù)組等對像,按照一定的命名規(guī)則定義的字符序列,即一個代號等對像,按照一定的命名規(guī)則定義的字符序列,即一個代號。3.1.1 3.1.1 標(biāo)識的命名標(biāo)識的命名標(biāo)識符的命名規(guī)則如下:標(biāo)識符的命名規(guī)則如下:標(biāo)識符由字母(包括大寫字母和小寫字母)、數(shù)字及標(biāo)識符由字母(包括大寫字母和小寫字母)、數(shù)字及下劃線組成,且第一個字符必須是字母或者下劃線。下劃線組成,且第一個字符必須是字母或者下劃線。在在C語言中,大寫字母和小寫字母
3、是有區(qū)別的,即作為語言中,大寫字母和小寫字母是有區(qū)別的,即作為不同的字母來看待,應(yīng)引起注意。不同的字母來看待,應(yīng)引起注意。3.1.2 3.1.2 保留字保留字保留字也稱關(guān)鍵字,是指在高級語言中,那些已經(jīng)定保留字也稱關(guān)鍵字,是指在高級語言中,那些已經(jīng)定義過的標(biāo)識符,用戶不能再將這些字作為變量名、常量名、義過的標(biāo)識符,用戶不能再將這些字作為變量名、常量名、函數(shù)名、數(shù)組名等。函數(shù)名、數(shù)組名等。C語言共有語言共有32個關(guān)鍵字,具體可分為個關(guān)鍵字,具體可分為4類:類:數(shù)據(jù)類型關(guān)鍵字(數(shù)據(jù)類型關(guān)鍵字(12個):個):char、double、enum、float、int、long、short、signed、
4、struct、union、unsigned、void??刂普Z句關(guān)鍵字(控制語句關(guān)鍵字(12個):個):break、case、continue、default、do、else、for、goto、if、return、switch、while。存儲類型關(guān)鍵字(存儲類型關(guān)鍵字(4個):個):auto、extern、register、static。3.1.2 3.1.2 保留字保留字其他關(guān)鍵字(其他關(guān)鍵字(4個):個):const、sizeof、typedef、volatile。C語言中除了上述的保留字外,還使用一些具有特定含語言中除了上述的保留字外,還使用一些具有特定含義的標(biāo)識符,稱為特定字。如義的標(biāo)
5、識符,稱為特定字。如include、define、ifdef、ifndef、endif、line。這些特定標(biāo)識符主要用在。這些特定標(biāo)識符主要用在C語言的編譯預(yù)處語言的編譯預(yù)處理命令中。理命令中。3.1.2 3.1.2 保留字保留字在在C語言中,標(biāo)識符的命名除了遵守命名規(guī)則、不使用語言中,標(biāo)識符的命名除了遵守命名規(guī)則、不使用關(guān)鍵字以外還要注意以下幾點。關(guān)鍵字以外還要注意以下幾點。在在C語言中,大寫字母和小寫字母是有區(qū)別的,即作為語言中,大寫字母和小寫字母是有區(qū)別的,即作為不同的字母來看待,因此不同的字母來看待,因此Teacher、TEACHER是兩個不同是兩個不同的標(biāo)識符。的標(biāo)識符。在起名時,應(yīng)
6、注意做到在起名時,應(yīng)注意做到“見名知義見名知義”。比如表示姓名。比如表示姓名:比較好的標(biāo)識符:比較好的標(biāo)識符:Name、name、xing_ming、Xingming、xm等;比較差的標(biāo)識符:等;比較差的標(biāo)識符:x、y、abc等。等。盡量不用單個的盡量不用單個的“l(fā)”和和“o”作標(biāo)識符。這個與數(shù)字中的作標(biāo)識符。這個與數(shù)字中的“1”和和“0”很相像,程序設(shè)計過程中容易混淆。很相像,程序設(shè)計過程中容易混淆。代數(shù)計算時可以采用習(xí)慣的名字。如:圓的半徑和面代數(shù)計算時可以采用習(xí)慣的名字。如:圓的半徑和面積:積:r,s;立方體的長、寬、高和體積:;立方體的長、寬、高和體積:a、b、h、v。3.2 3.2
7、常量常量常量是指在程序運(yùn)行過程中其值不隨程序的運(yùn)行而改常量是指在程序運(yùn)行過程中其值不隨程序的運(yùn)行而改變的量。常量在程序中不需要進(jìn)行任何說明就可以直接使用變的量。常量在程序中不需要進(jìn)行任何說明就可以直接使用,常量本身就隱含了它的類型。常量區(qū)分為不同的類型,分,常量本身就隱含了它的類型。常量區(qū)分為不同的類型,分為直接常量和符號常量。為直接常量和符號常量。3.2.1 3.2.1 直接常量直接常量直接常量是直接寫出來的,直接常量的書寫形式?jīng)Q定直接常量是直接寫出來的,直接常量的書寫形式?jīng)Q定了它的類型。直接常量包括整型常量、實型常量、字符型常了它的類型。直接常量包括整型常量、實型常量、字符型常量和字符串常
8、量。例如:量和字符串常量。例如:整型常量:整型常量:15、-8、0。實型常量:實型常量:3.7、-8.2、58.12E-2。字符常量:字符常量:a、A、+、5。字符串常量:字符串常量:“this is a boy.”、“a”、“123”。3.2.2 3.2.2 符號常量符號常量符號常量是指用一個標(biāo)識符代表一個常量。如商場內(nèi)符號常量是指用一個標(biāo)識符代表一個常量。如商場內(nèi)某一產(chǎn)品的價格中發(fā)生了變化,如果我們在一個程序中多次某一產(chǎn)品的價格中發(fā)生了變化,如果我們在一個程序中多次用到了這種商品的價格,需要逐修改非常麻煩,這樣可以定用到了這種商品的價格,需要逐修改非常麻煩,這樣可以定義一個符號常量,在文件
9、的開頭寫這么一行命令:義一個符號常量,在文件的開頭寫這么一行命令:#define PRICE 50這里用這里用#define命令行定義命令行定義PRICE代表常量代表常量50,后面的,后面的程序中有用到這種商品的價格時,直接用程序中有用到這種商品的價格時,直接用PRICE,可以和常,可以和常量一樣進(jìn)行運(yùn)算,如果常量的值需要發(fā)生變化,只需要在量一樣進(jìn)行運(yùn)算,如果常量的值需要發(fā)生變化,只需要在#define命令行進(jìn)行修改,達(dá)到一改全改的目的。命令行進(jìn)行修改,達(dá)到一改全改的目的。3.2.2 3.2.2 符號常量符號常量這里需要說明以下幾點:這里需要說明以下幾點:符號常量名習(xí)慣上用大寫,以便與變量名相
10、區(qū)分。符號常量名習(xí)慣上用大寫,以便與變量名相區(qū)分。一個一個#define對應(yīng)一個常量,占一行;對應(yīng)一個常量,占一行;n個常量時需個常量時需n個個define與之對應(yīng),占與之對應(yīng),占n行。(這將在第行。(這將在第7章的預(yù)編譯部分進(jìn)行章的預(yù)編譯部分進(jìn)行詳細(xì)的講解)。詳細(xì)的講解)。符號常不同于變量,它的值在其作用域內(nèi)不能改變,符號常不同于變量,它的值在其作用域內(nèi)不能改變,也不能再被賦值。也不能再被賦值。在程序中使用符號常量具有可讀性好,修改方便的優(yōu)在程序中使用符號常量具有可讀性好,修改方便的優(yōu)點。點。3.3 3.3 變量變量變量是指在程序運(yùn)行過程中其值可以改變的量。程序變量是指在程序運(yùn)行過程中其值可
11、以改變的量。程序中使用的變量名是用戶根據(jù)需要而取名,變量名必須符號標(biāo)中使用的變量名是用戶根據(jù)需要而取名,變量名必須符號標(biāo)識符的命名規(guī)則。識符的命名規(guī)則。在在C語言中,由于程序的多樣性的需要,對變量也有各語言中,由于程序的多樣性的需要,對變量也有各種各樣的要求,比如:變量的生命期,變量的初始狀態(tài),變種各樣的要求,比如:變量的生命期,變量的初始狀態(tài),變量的有效區(qū)域,變量的開辟地和變量的開辟區(qū)域的大小等等量的有效區(qū)域,變量的開辟地和變量的開辟區(qū)域的大小等等,為了滿足這些要求,為了滿足這些要求,C語言設(shè)置了以下變量:不同數(shù)據(jù)類語言設(shè)置了以下變量:不同數(shù)據(jù)類型的變量、全局變量、局部變量、靜態(tài)變量(靜態(tài)全
12、局變量型的變量、全局變量、局部變量、靜態(tài)變量(靜態(tài)全局變量和靜態(tài)局部變量)、寄存器變量、外部變量等。這里我們只和靜態(tài)局部變量)、寄存器變量、外部變量等。這里我們只要先講解不同數(shù)據(jù)類型的變量,在第要先講解不同數(shù)據(jù)類型的變量,在第6章我們將逐一對其他章我們將逐一對其他種類的變量進(jìn)行講解。種類的變量進(jìn)行講解。3.3.1 3.3.1 變量的定義變量的定義變量的定義需要注意以下幾點。變量的定義需要注意以下幾點。每個變量定義語句都必須以分號結(jié)尾。每個變量定義語句都必須以分號結(jié)尾。變量定義語句可以出現(xiàn)在變量使用之前的任何位置。變量定義語句可以出現(xiàn)在變量使用之前的任何位置。程序設(shè)計時只要不違背程序設(shè)計時只要不
13、違背“先定義,后使用先定義,后使用”的原則即可。的原則即可。變量一經(jīng)定義,每一個變量就有一種確定的類型,在變量一經(jīng)定義,每一個變量就有一種確定的類型,在編譯時就能為其分配相應(yīng)的存儲單元。編譯時就能為其分配相應(yīng)的存儲單元。一個變量在內(nèi)存中占據(jù)一定的存儲單元,用變量名來一個變量在內(nèi)存中占據(jù)一定的存儲單元,用變量名來標(biāo)識在內(nèi)存中所分配的存儲單元,在該存儲單元中存放變量標(biāo)識在內(nèi)存中所分配的存儲單元,在該存儲單元中存放變量的值。的值。3.3.2 3.3.2 變量的初始化變量的初始化變量的初始化就是對變量賦初值。初始化變量并不是變量的初始化就是對變量賦初值。初始化變量并不是必須的,但是在必須的,但是在c語
14、言中未初始化的變量是其數(shù)據(jù)類型允許語言中未初始化的變量是其數(shù)據(jù)類型允許范圍內(nèi)的任意值(靜態(tài)變量除外),為了防止運(yùn)算中出錯,范圍內(nèi)的任意值(靜態(tài)變量除外),為了防止運(yùn)算中出錯,一般建議定義變量后,立即初始化。變量的初始化有種方法一般建議定義變量后,立即初始化。變量的初始化有種方法:一種是定義初始化,即定義變量的同時對其賦予初始值。:一種是定義初始化,即定義變量的同時對其賦予初始值。另一種方法是先定義變量,然后再進(jìn)行賦值或是等到需要賦另一種方法是先定義變量,然后再進(jìn)行賦值或是等到需要賦值的時候再賦值。值的時候再賦值。3.4 3.4 變量的初始化變量的初始化對于變量的初始化,我們可以歸納以下幾點:對于變量的初始化,我們可以歸納以下幾點:(1)初始化實際上是一個賦值語句。)初始化實際上是一個賦值語句。(2)在定義變量的時候,可以只給部分變量賦值。)在定義變量的時候,可以只給部分變量賦值。(3)如果同進(jìn)對幾個變量賦相同的初值,應(yīng)該注意書)如果同進(jìn)對幾個變量賦相同的初值,應(yīng)該注意書寫格式。寫格式。3.4 3.4 變量的初始化變量的初始化在在C語言中,使用變量時,如果它出現(xiàn)在表達(dá)式中,事語言中,使用變量時,如果它出現(xiàn)在表達(dá)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度房地產(chǎn)分銷渠道拓展及管理合同3篇
- 轉(zhuǎn)向臂課程設(shè)計卡
- 水文課程設(shè)計模板內(nèi)容
- 2025年百日誓師大會演講稿例文(2篇)
- 2025年社區(qū)文化工作計劃(3篇)
- 學(xué)校長值日制度模版(2篇)
- 學(xué)校傳染病管理制度例文(三篇)
- 2025年度路沿石生產(chǎn)工藝改進(jìn)與創(chuàng)新合作合同3篇
- 二零二五年度水泥預(yù)制品行業(yè)電子商務(wù)平臺建設(shè)合同2篇
- 2024年華東師大版必修1物理下冊階段測試試卷
- 醫(yī)院感染監(jiān)測清單
- 社區(qū)老年人項目計劃書
- 《1.我又長大了一歲》教學(xué)課件∣泰山版
- 斷裂力學(xué)-1緒論課件
- 深基坑工程驗收表
- 醫(yī)學(xué)交流課件:RCT的基本概念及原則(PPT 37頁)
- SLZ 549-2012 用水審計技術(shù)導(dǎo)則(試行)
- qes三體系審核培訓(xùn)ppt課件
- CASS文字編緝
- JJF 1406-2013 地面激光掃描儀校準(zhǔn)規(guī)范(原版-高清)
- 轉(zhuǎn)爐系統(tǒng)機(jī)械設(shè)備概述
評論
0/150
提交評論