學習每一個編程語言都是從 "Hello world!" 開始的,這好像就是編程界一條不成文的規定一樣,
在這篇文章中,我將教大家撰寫一個可以輸出 "Hello world!" 的程式,
在vs2019中創建解決方案和專案:
運行vs2019,選擇“創建新專案”->“空白解決方案”->“下一步”->填寫專案名稱,就是解決方案的名稱,我寫的是“c_learn”->填寫路徑,可以理解為“作業區域”,這里建議新建一個檔案夾來專門存盤你的各種解決方案->“創建”,
接下來在右側“解決方案管理器”中右鍵解決方案那一項->“添加”->“新建專案”->“空專案”->“下一步”->填寫專案名稱,一邊就是你那個輸出程式的名字,我這里填寫的是“0x01HelloWorld”->填寫位置,這里一般不用改->“創建”,
至此,解決方案和專案已經創建好了,但是我們還是不能開始撰寫代碼,因為我們還需要進行一些配置以及添加源代碼檔案:
在右側“解決方案管理器”中右鍵你剛剛創建的專案->“屬性”->“配置屬性”->“高級”->設定“字符集”為“使用多位元組字符集”->“常規”->“輸出目錄”->“瀏覽”->在你的解決方案檔案夾中新建一個檔案夾專門用來存盤編譯好的程式->“確定”,
注:這里修改輸出目錄是為了讓輸出目錄保持一致,因為在vs中切換“x86”、“x64”、“Debug”以及“Release”等選項時,輸出目錄會發生變化,這回占用更多的空間,并且可能會導致一些意想不到的問題,當然,如果你不想該,也沒有什么大問題,
然后在右側“解決方案管理器”中右鍵“源檔案”選項->“添加”->“新建項”->“c++檔案(.cpp)”->設定名稱,我寫的是“entry.cpp”->位置一般不用改->“添加”,
現在,我們就可以開始真正的開始寫程式了,
示例程式:
1 #include <stdio.h>//Include a header 2 #include <windows.h> 3 4 //Entry of the program 5 int main(int argc, char** argv) 6 { 7 printf("Hello world!");//Print a String on the screen 8 system("pause");//Pause the program 9 return 0;//Return a value to the system 10 }
在編譯器中輸入這些代碼后,點擊“編譯”按鈕,就會在工程所在檔案夾下生成一個可執行檔案(.exe),雙擊運行即可,
注:在vs中,可以直接按ctrl+f5運行,
對于初學者來講,對這段代碼肯定是會有很多不懂的地方,但是,我們先讓程式跑起來,看看是什么樣子再說,下面我會對這些代碼一一解釋,
決議:
1:
#include <stdio.h>//Include a header #include <windows.h>
這句話是什么意思呢?從字面意思上來講,include在英文中是“包含”的意思,所以,這句話的作用是告訴編譯器講一個頭檔案包含到我們的代碼里面,這個頭檔案呢,通常以(.h)結尾,他其實呢跟我們的源代碼檔案(.c)差不多,都寫著代碼,所以這一句就可以說是把別人寫好的代碼白嫖了過來給我們自己用,有關include的知識先說到這里,之后在講預編譯的時候再往細了講,
那么這個stdio.h又是什么東西呢?其實,它就是我們上文中提到的頭檔案,其中stdio是Standard Input and Output的縮寫,意思為標準輸入輸出,所以,只有使用它,我們才能進行輸入輸出操作,在這個例子中就是在螢屏上顯示一串字,
另一個windows.h提供了在windows系統中所要使用到的一些功能,
后面的//的意思是注釋,就是//以及它后面的所有字符(但是不包括下一行)都是不會影響程式的運行的,注釋是為了提高程式的可讀性,說白了就是讓你以及別人能盡可能看懂你的程式,在c語言中,注釋還有另一種寫法:
1 #include <stdio.h>/*Before me is the include sentence 2 I will not affect the program 3 After me is the program*/ 4 int main(int argc, char **argv) 5 {...}
意思就是從/*到*/之間的都是注釋(包含/*和*/),
注:在vs中,選中代碼后先按下ctrl+k再按下ctrl+c即可注釋掉選中代碼;選中后先按下ctrl+k再按下ctrl+u即可取下注釋選中的代碼,
2:
int main(int argc, char **argv)
這個東西我們先不細講,在之后講了資料型別之后再來細講argc和argv是什么東西,現在我們需要知道的是,這個東西叫main函式,是這個程式的入口,也就是一個程式開始的地方,因此本程式會從main函式的第一行開始執行,
3:
printf("Hello world!");//Print a String on the screen
printf是一個字符輸出函式,在這里它會吧括號里面的字串輸出到螢屏上,
注意:在c語言以及c++中,字串必須用一對雙引號括起來;用單引號只能括起來一個字符,
4:
system("pause");//Pause the program
這句話的作用是將程式暫停住,
我們知道,在程式執行完輸出函式后,它會接著執行下一條陳述句,如果沒有本條陳述句,那么接下來執行的將會是:
return 0;//Return a value to the system
這條陳述句會向系統回傳一個值,并且告訴系統:“我已經運行完畢,可以退出”,然后系統就會關掉你的程式,
這么一來,字串剛剛被顯示出來,視窗就被關閉了(嚴謹一點來說就是程式退出了),我們就沒有時間去看到輸出的字串了,(電腦的運行速度是很快的)
所以,如果能將程式暫時暫停住,我們就有時間看到輸出的字串了,
注:在某些編譯器中,程式會在退出前暫停住,所起在那些編譯器中,就不需要人為的暫停程式,但是,為了保險起見,我還是建議大家加上這句話,
提示:
如果顯示編譯失敗,請檢查以下列出來的可能原因:
1:忘記打分號;
2:使用了中文字符;
3:把0打成了o;
4:該空格的地方沒有空格;
5:括號沒有成對出現,
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/9915.html
標籤:Windows
上一篇:疫情之下,使用FRP實作內網穿透,遠程連接公司電腦進行辦公
下一篇:windows快捷鍵記錄
