1.2.2 注釋
程序的前兩行是注釋。
// Game Over
// A first C++ program
注釋是給程序員看的,編譯器完全忽略。注釋可以幫助其他程序員理解程序作者的意圖。它也對(duì)程序作者本身有幫助。對(duì)于程序員曾使用晦澀的代碼完成的工作,它能幫助程序員回憶起代碼的含義。
注釋以?xún)蓚€(gè)連續(xù)的斜線(//)開(kāi)始,其后的部分即為注釋部分。這意味著我們可以在同一行中某一塊C++代碼后面添加注釋。
提示
我們還可以使用C風(fēng)格注釋?zhuān)瑢⒆⑨寯U(kuò)展到多行。所要做的只是把注釋以/*開(kāi)頭,并以*/結(jié)尾。任何處于這兩個(gè)記號(hào)之間的文本都是注釋部分。
1.2.3 使用空白字符
程序Game Over中注釋以下是一個(gè)空白行。編譯器會(huì)忽略空白行。實(shí)際上,編譯器忽略所有的空白字符——空格、制表符和換行符。和注釋一樣,空白字符只是給程序員看的。
空白字符使用得當(dāng)可以讓程序更加清晰易懂。例如,空白行可以用于分隔屬于一起的代碼塊。該程序的代碼也將空白字符(準(zhǔn)確地說(shuō)是制表符)置于花括號(hào)中兩行的起始位置,作為每一行的開(kāi)始。
1.2.4 包含其他文件
程序中接下來(lái)的一行是預(yù)處理器指令。預(yù)處理器指令以#符號(hào)開(kāi)頭。
#include <iostream>
預(yù)處理器在編譯之前運(yùn)行,并基于各種指令進(jìn)行文本替換。在本例中,含有#include指令的這一行代碼告訴預(yù)處理器將另一個(gè)文件的內(nèi)容包含進(jìn)來(lái)。
程序中包含了作為標(biāo)準(zhǔn)庫(kù)一部分的iostream文件,因?yàn)槠渲杏杏糜陲@示輸出的代碼。文件名兩端的小于號(hào)(<)和大于號(hào)(>)告訴編譯器在其自帶文件中查找需要的文件。像這樣包含在程序中的文件稱(chēng)為頭文件。
1.2.5 定義main()函數(shù)
接下來(lái)的非空白行是一個(gè)名為main()的函數(shù)頭。
int main()
函數(shù)是指一組程序代碼,它能完成某種任務(wù)并返回一個(gè)值。在本程序中,int表示函數(shù)將返回一個(gè)整型值。所有函數(shù)頭在函數(shù)名后面都有一對(duì)圓括號(hào)。
所有C++程序都必須有一個(gè)名為main()的函數(shù)作為程序的起始點(diǎn)。程序是從這里開(kāi)始運(yùn)行的。
下面一行標(biāo)記函數(shù)的開(kāi)始。
{
程序的最后一行標(biāo)記函數(shù)的結(jié)束。
}
所有函數(shù)都被一對(duì)花括號(hào)括起來(lái)?;ɡㄌ?hào)里面的代碼都屬于函數(shù)。兩個(gè)花括號(hào)之間的代碼稱(chēng)為代碼塊。代碼塊通常會(huì)縮進(jìn)顯示,表示它形成了一個(gè)代碼單元。構(gòu)成整個(gè)函數(shù)的代碼塊稱(chēng)為函數(shù)體。