1.5 C+ +語(yǔ)言的詞匯
1關(guān)鍵字
關(guān)鍵字也稱為保留字,它是由C+ +語(yǔ)言本身預(yù)先定義好的一類單詞。
表1ANSI C 標(biāo)準(zhǔn)規(guī)定的關(guān)鍵字
auto break case char
const continue default do
double else enum extern
float for goto if
int long register return
short signed sizeof static
struct switch typedef union
unsigned void volatile while
表2ANSI C+ + 標(biāo)準(zhǔn)補(bǔ)充的關(guān)鍵字
bool catch class const_cast
delete dynamic_cast explicit false
friend inline mutable namespace
new operator private protected
public reinterpret_case static_cast template
this throw true try
typeid typename using virtual
wchar_t2標(biāo)識(shí)符
標(biāo)識(shí)符是用戶為程序中各種需要命名的“元素”所起的名字。標(biāo)識(shí)符的組成要符合一定的規(guī)則:
(1)標(biāo)識(shí)符是一個(gè)以字母或下劃線開頭的,由字母、數(shù)字、下劃線組成的字符串。
(2)標(biāo)識(shí)符不能與任意一個(gè)關(guān)鍵字同名。
(3)標(biāo)識(shí)符中的字母區(qū)分大小寫。
(4)標(biāo)識(shí)符不宜過(guò)長(zhǎng)。C+ +語(yǔ)言一般設(shè)定一個(gè)標(biāo)識(shí)符的有效長(zhǎng)度為32個(gè)字符。
3字面常量
常量是指在程序中固定不變的值。常量一般有兩種表示形式,即符號(hào)常量和字面常量。C+ +語(yǔ)言中符號(hào)常量的名字就是一個(gè)標(biāo)識(shí)符,而字面常量卻是一類特殊的單詞。字面常量分為整型、浮點(diǎn)型、字符型和字符串型四類。
4運(yùn)算符
運(yùn)算符是對(duì)程序中的數(shù)據(jù)進(jìn)行操作的一類單詞。C+ +語(yǔ)言中運(yùn)算符的種類非常豐富,其中有:
(1)單字符組成的運(yùn)算符。
(2)雙字符組成的運(yùn)算符。
(3)三個(gè)字符組成的運(yùn)算符。
(4)關(guān)鍵字運(yùn)算符。
5標(biāo)點(diǎn)符號(hào)
標(biāo)點(diǎn)符號(hào)是在程序中起分割內(nèi)容和界定范圍作用的一類單詞。
表3C+ +語(yǔ)言的標(biāo)點(diǎn)符號(hào)
標(biāo) 點(diǎn) 符 號(hào) 描 述
(空格) 語(yǔ)句中各成分之間的分割符
; (分號(hào)) 語(yǔ)句的結(jié)束符
′ (單引號(hào)) 字符常量的起止標(biāo)記符
″ (雙引號(hào)) 字符串常量的起止標(biāo)記符
# (井字號(hào)) 預(yù)處理命令的開始標(biāo)記符
{ (左花括號(hào)) 復(fù)合語(yǔ)句的開始標(biāo)記符
。 (右花括號(hào)) 復(fù)合語(yǔ)句的結(jié)束標(biāo)記符
∥ (雙斜杠) 行注釋的開始標(biāo)記符
/* (斜杠和星號(hào)) 塊注釋的開始標(biāo)記符
*/ (星號(hào)和斜杠) 塊注釋的結(jié)束標(biāo)記符
1.6 C+ +程序的基本框架
由于C+ +語(yǔ)言既支持結(jié)構(gòu)化程序設(shè)計(jì),又支持面向?qū)ο蟪绦蛟O(shè)計(jì),所以它同時(shí)具有結(jié)構(gòu)化程序設(shè)計(jì)和面向?qū)ο蟪绦蛟O(shè)計(jì)兩種基本框架。
1結(jié)構(gòu)化程序設(shè)計(jì)框架
在C+ +的結(jié)構(gòu)化程序設(shè)計(jì)框架中,函數(shù)是程序的基本組成單元。程序的主體通常由若干函數(shù)定義構(gòu)成。
函數(shù)是程序中完成一定功能的模塊。各個(gè)函數(shù)之間通過(guò)參數(shù)、返回值和全局變量來(lái)進(jìn)行數(shù)據(jù)通信。
當(dāng)編寫一個(gè)較大的程序時(shí),可以把它按照功能逐級(jí)劃分成許多相對(duì)獨(dú)立的小模塊。每個(gè)小模塊的功能由一個(gè)函數(shù)實(shí)現(xiàn),再通過(guò)適當(dāng)?shù)姆椒▽⑦@些函數(shù)組織在一起協(xié)同工作,就能夠完成整個(gè)程序所規(guī)定的任務(wù)。這種方法體現(xiàn)出了結(jié)構(gòu)化程序設(shè)計(jì)中“功能分解,逐步求精”的思想。
使用結(jié)構(gòu)化程序設(shè)計(jì)方法編寫出的C+ +程序包括一個(gè)主函數(shù)和若干用戶定義函數(shù)。主函數(shù)由操作系統(tǒng)調(diào)用,它是整個(gè)程序的入口。在主函數(shù)中調(diào)用其他函數(shù),其他函數(shù)之間也可以相互調(diào)用,并且同一個(gè)函數(shù)可以被一個(gè)或多個(gè)函數(shù)調(diào)用任意多次。在C+ +中一個(gè)函數(shù)被調(diào)用之前必須先被聲明。函數(shù)聲明和函數(shù)體放在一起組成函數(shù)定義;函數(shù)體是用花括號(hào)括起來(lái)的若干語(yǔ)句,它們完成了一個(gè)函數(shù)的具體功能。
一般地,一個(gè)C+ +程序的結(jié)構(gòu)化程序設(shè)計(jì)框架可以表示為:
<函數(shù)1的聲明>
<函數(shù)2的聲明>
…
<函數(shù)n的聲明>
<主函數(shù)main()>
<函數(shù)1的定義>
<函數(shù)2的定義>
…
<函數(shù)n的定義>
2面向?qū)ο蟪绦蛟O(shè)計(jì)框架
在C+ +的面向?qū)ο蟪绦蛟O(shè)計(jì)框架中,類成為程序的基本組成單元。程序的主體通常由若干類的定義構(gòu)成。
類可以把數(shù)據(jù)和函數(shù)封裝在一起,用以描述事物的屬性和對(duì)事物的操作。類與類之間一方面通過(guò)封裝而具有明確的獨(dú)立性;另一方面又通過(guò)成員、友元、參數(shù)、繼承和派生等關(guān)系,達(dá)到相互通信和聯(lián)絡(luò)的目的,從而形成一個(gè)有機(jī)的整體。
在結(jié)構(gòu)化程序設(shè)計(jì)中,除了主函數(shù)之外,所有函數(shù)之間一律“平等”,沒有層次關(guān)系可言,當(dāng)程序規(guī)模稍大時(shí),就會(huì)使整體結(jié)構(gòu)變得相當(dāng)混亂。相反,在面向?qū)ο蟪绦蛟O(shè)計(jì)中,類與類之間能夠按照邏輯關(guān)系組成有條理的層次結(jié)構(gòu),從而使一個(gè)復(fù)雜程序變得有“綱”可循。這正體現(xiàn)出面向?qū)ο笏枷氲膬?yōu)越性。
一般地,一個(gè)C+ +程序的面向?qū)ο蟪绦蛟O(shè)計(jì)框架可以表示為:
<類1的定義>
<類2的定義>
…
<類n的定義>
<主函數(shù)main()>
<類1的成員函數(shù)定義>
<類2的成員函數(shù)定義>
…
<類n的成員函數(shù)定義>
1.7 C+ +程序的開發(fā)過(guò)程
開發(fā)一個(gè)C++程序的過(guò)程通常包括編輯、編譯、鏈接、運(yùn)行和調(diào)試等步驟。
1編輯
在VC6集成開發(fā)環(huán)境中,用戶可以使用編輯窗口來(lái)進(jìn)行C+ +程序的編輯工作。VC6的編輯窗口是專門為編輯C+ +程序而設(shè)計(jì)的,它提供了包括語(yǔ)法亮色、調(diào)用提示、自動(dòng)縮進(jìn)、查找和替換等在內(nèi)的一系列功能,使用起來(lái)十分方便。
當(dāng)用戶完成了C+ +程序的編輯時(shí),應(yīng)將輸入的程序文本保存為以cpp為擴(kuò)展名的文件(保存C+ +頭文時(shí)應(yīng)以h為擴(kuò)展名)。
2編譯
在VC6集成開發(fā)環(huán)境中,用戶可以使用編譯(Compile)命令將一個(gè)以cpp為擴(kuò)展名的C+ +源程序文件轉(zhuǎn)換成一個(gè)以obj為擴(kuò)展名的目標(biāo)文件。如果一個(gè)C+ +程序由多個(gè)源程序文件組成,應(yīng)將它們分別進(jìn)行編譯形成多個(gè)目標(biāo)文件。
3鏈接
在VC6集成開發(fā)環(huán)境中,用戶可以使用生成(Build)命令來(lái)進(jìn)行目標(biāo)文件的鏈接工作。另外,在源程序文件沒有被編譯的情況下直接使用此命令,可以使編譯和鏈接工作一起完成。
4運(yùn)行和調(diào)試
在編譯和鏈接工作成功地完成之后可以運(yùn)行得到的可執(zhí)行程序,觀察程序是否符合我們所期望的運(yùn)行結(jié)果。在VC6集成開發(fā)環(huán)境中,用戶可以使用執(zhí)行(Execute)命令來(lái)運(yùn)行程序。
如果程序的運(yùn)行結(jié)果不是我們所期望的,說(shuō)明源程序文件中存在著語(yǔ)義錯(cuò)誤。這時(shí),需要使用調(diào)試器對(duì)可執(zhí)行程序進(jìn)行跟蹤調(diào)試來(lái)查找錯(cuò)誤發(fā)生的原因。在VC6集成開發(fā)環(huán)境中,用戶可以很方便地進(jìn)入調(diào)試狀態(tài),對(duì)程序進(jìn)行設(shè)置斷點(diǎn)、單步執(zhí)行、觀察變量等操作。
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關(guān)推薦:
2018年全國(guó)計(jì)算機(jī)等級(jí)考試必做試題匯總(各科目)
2018年全國(guó)計(jì)算機(jī)等級(jí)考試復(fù)習(xí)知識(shí)點(diǎn)匯總(各科目)
2018年全國(guó)計(jì)算機(jī)等級(jí)考試時(shí)間|教材目錄(2018年版)
2018全國(guó)計(jì)算機(jī)等級(jí)考試備考經(jīng)驗(yàn)及應(yīng)試技巧匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |