學(xué)習一門(mén)程序設計語(yǔ)言的惟一途徑就是使用它編寫(xiě)程序,但是如果一開(kāi)始就面對一個(gè)復雜的程序,并詳盡的介紹語(yǔ)言的方方面面,將會(huì )涉及到許多細節方面的知識,這樣很難對語(yǔ)言自身形成一個(gè)完整的概念性理解。因此,我們遵循古老的傳說(shuō),從C語(yǔ)言版本的Hello, World!起步,借此逐行講解它的工作過(guò)程,以便我們對C語(yǔ)言有個(gè)整體印象。
1:創(chuàng )建項目
首先,我們按照上節內容《使用Visual Studio 2015創(chuàng )建控制臺應用程序》一文中介紹的方法,建立一個(gè)名為HelloWorld的項目,然后為項目添加一個(gè)C文件,Hello.c,并輸入以下代碼。

2:快速理解
現在讓我們快速的對這個(gè)C文件進(jìn)行介紹,以使你對整個(gè)過(guò)程有個(gè)大概的了解。
#include
這行代碼的作用是包含一個(gè)名為stdio.h的頭文件。頭文件好比一張說(shuō)明書(shū),程序自身可以從它當中查詢(xún)或引用所需要的信息。在這里stdio.h為下面使用的printf()函數提供了相關(guān)信息。
int main(void)
這行代碼定義一個(gè)名為main的函數。int表示函數返回一個(gè)整數值,這個(gè)值通常用于指示函數處理的最終結果或狀態(tài);void表示main()函數不接受任何參數。
函數是C程序的基本模塊。對應于生活,程序中的函數可以理解為用于完成某個(gè)具體任務(wù)的活動(dòng)。如:你在參加一個(gè)聚會(huì ),分配給你的任務(wù)是烘培一些蛋糕。很顯然,烘培蛋糕是這個(gè)任務(wù)的主旨,可以理解為函數的名稱(chēng)。同時(shí),你的朋友為你提供了一些模具,希望你能使用這些模塊做出多種樣式的蛋糕來(lái),這些模具可以理解為函數的參數,函數內部使用這些參數進(jìn)行運算以產(chǎn)生不同樣子的蛋糕。當烘培完成后你通知大家蛋糕做好了,這個(gè)通知是一種狀態(tài)反饋,相當于函數返回值。
main是一個(gè)特殊的函數名:
每個(gè)C程序都從main()函數的起點(diǎn)開(kāi)始執行,這意味著(zhù)每個(gè)程序都必須在某個(gè)位置包含一個(gè)main()函數。
{}
接下來(lái)是是一對花括號,表示main函數語(yǔ)句的開(kāi)始與結束。
// 使用printf函數輸出文本
以雙斜杠開(kāi)頭的行被稱(chēng)為注釋?zhuān)⑨層糜趯Υa起注解作用。注釋不是有效的代碼。雙斜杠注釋的范圍是當前行。
printf( 'Hello, World!\n' );
這是main函數中的第一條語(yǔ)句。它使用stdio.h頭文件中的聲明的printf函數,將字符串 Hello, World! 輸出到屏幕。最后的 \n的意思是new-line,即輸出完成后另起一行,這樣后續的輸出將會(huì )從下一行的行首開(kāi)始。
與main一樣,printf也是一個(gè)函數,它接受一個(gè)由雙引號括起來(lái)的文本串作為其參數。而main函數在這里則不接受任何參數。
return 0;
這表示main函數執行完成,返一個(gè)0值,表示函數執行期間沒(méi)有發(fā)生任何錯誤。
運行程序
現在嘗試編譯并運行一下程序,如果這期間沒(méi)有發(fā)生任何輸入錯誤,則可以在屏幕上看到 Hello, World! 這行文字,同時(shí)你也會(huì )發(fā)現,注釋并沒(méi)有被輸出到屏幕上。

聯(lián)系客服