正文

類型、變量與標(biāo)準(zhǔn)(6)

通過(guò)游戲編程實(shí)戰(zhàn)教新手學(xué)C++編程 作者:(美)Michael Dawson


1.2.6  通過(guò)標(biāo)準(zhǔn)輸出顯示文本

main()函數(shù)體的第一行在控制臺(tái)窗口顯示Game Over!和一個(gè)換行符。

std::cout << "Game Over!" << std::endl;

“Game Over!”是字符串,即一連串可以打印的字符。從技術(shù)上而言,它是一個(gè)字符串字面值,即它就是引號(hào)中間的那些字符。

cout是在iostream文件中定義的對(duì)象,用于向標(biāo)準(zhǔn)輸出流發(fā)送數(shù)據(jù)。在大多數(shù)程序中(包括本程序),標(biāo)準(zhǔn)輸出流僅僅是指計(jì)算機(jī)屏幕中的控制臺(tái)窗口。

輸出運(yùn)算符(<<)用于向?qū)ο骳out發(fā)送字符串??梢詫⑤敵鲞\(yùn)算符想象成一個(gè)漏斗,它將開(kāi)口一端的數(shù)據(jù)收集起來(lái)并使其流向收口的一端。所以,字符串順著漏斗流向了標(biāo)準(zhǔn)輸出——屏幕。

cout的前綴std告訴編譯器這里的cout來(lái)自標(biāo)準(zhǔn)庫(kù)。std是名稱空間??梢詫⒚Q空間想象成電話號(hào)碼的區(qū)號(hào),它唯一標(biāo)識(shí)了成員所屬的組。名稱空間后面跟著作用域解析運(yùn)算符(::)。

最后,程序還向標(biāo)準(zhǔn)輸出發(fā)送了std::endl。endl在iostream中定義,它也是std名稱空間中的一個(gè)對(duì)象。向標(biāo)準(zhǔn)輸出發(fā)送endl類似于在控制臺(tái)窗口中按下回車(chē)鍵。實(shí)際上,如果此時(shí)向控制臺(tái)窗口發(fā)送另一個(gè)字符串,它將出現(xiàn)在屏幕的下一行。

這些概念可能有些難以理解。請(qǐng)看圖1-3,它以圖形方式形象地表示了所有描述過(guò)的元素之間的關(guān)系。

圖1-3  標(biāo)準(zhǔn)C++的實(shí)現(xiàn)包含了一個(gè)稱為標(biāo)準(zhǔn)庫(kù)的文件集合。標(biāo)準(zhǔn)庫(kù)包含了iostream文件。

iostream文件又包含了各種定義,其中包括cout對(duì)象的定義

1.2.7  語(yǔ)句的終止

如果留意函數(shù)的第一行,會(huì)發(fā)現(xiàn)它以一個(gè)分號(hào)(;)結(jié)尾。這是因?yàn)檫@一行是一條語(yǔ)句——控制程序執(zhí)行流程的基本單元。所有語(yǔ)句都必須以分號(hào)結(jié)尾,否則編譯器會(huì)報(bào)錯(cuò),而且不會(huì)編譯程序。

1.2.8  從main()函數(shù)返回值

函數(shù)的最后一條語(yǔ)句將0返回給操作系統(tǒng)。

return 0;

從main()函數(shù)返回0表示程序正常結(jié)束。操作系統(tǒng)與返回值無(wú)關(guān)。一般來(lái)說(shuō),可以像該程序一樣簡(jiǎn)單地返回0。

技巧

在運(yùn)行Game Over程序時(shí),可能只是看見(jiàn)控制臺(tái)窗口一閃而過(guò)。那是因?yàn)镃++太快,它在不到一秒的時(shí)間內(nèi)打開(kāi)一個(gè)控制臺(tái)窗口,顯示Game Over!,然后關(guān)閉窗口。然而,在Windows操作系統(tǒng)下,可以創(chuàng)建批處理文件,在運(yùn)行控制臺(tái)程序后暫停。這可以保持控制臺(tái)窗口處于打開(kāi)狀態(tài),以便查看程序結(jié)果。因?yàn)榫幾g后的程序名為game_over.exe,所以可以簡(jiǎn)單地創(chuàng)建由以下兩行代碼組成的批處理文件:

game_over.exe

pause

創(chuàng)建批處理文件的步驟如下:

(1) 打開(kāi)一個(gè)文本編輯器,如Notepad(不能是Word或WordPad)。

(2) 輸入文本。

(3) 以.bat擴(kuò)展名保存文件,如game_over.bat。

最后,雙擊文件圖標(biāo)運(yùn)行批處理文件。因?yàn)榕幚砦募?huì)使控制臺(tái)窗口處于打開(kāi)狀態(tài),這時(shí)應(yīng)當(dāng)能看到程序結(jié)果。


上一章目錄下一章

Copyright ? 讀書(shū)網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)