基本語法
就讓我們從大家學程式語言第一個程式碼「Hello world!」開始講起吧!
#include <iostream>
using namespace std;
int main() {
// 輸出 Hello world!
cout << “Hello world! \n”;
return 0;
}
其輸出結果會為:
接下來我們會將程式碼拆成五個部分來介紹:
Preprocessor
中文翻譯為前置處理器,圖中第1行即為 preprocessor,他必須放在整個程式碼的最開頭,由#
開頭。
C++標準函式庫 (standard library) 中有各式各樣的函式,提供了各種功能,例如我們這邊輸出用的cout就是iostream
所提供的功能之一。當電腦讀到這行程式碼的時候,他就會去從函式庫中尋找iostream
這個函式,若沒有這行 preprocessor,電腦就不知道甚麼是 cout,這樣這段程式碼就無法達成我們想要的目標。iostream
屬於一種 header file,當然我們也可以自定義 header file,不過我們這邊就不細講啦!
常用的標準函式:<iostream>
:輸入資料可以用cin、輸出可用cout。<cmath>
:求絕對值、次方、log、三角函數等。<algorithmn>
:sort可以對array、vector進行遞增或遞減排序、min\max可以用來找最大最小值。
Namespace
那第 2 行中的 namespace 到底是甚麼呢?namespace 中文譯為命名空間,一個變數可以在很多個命名空間中被定義而不互相影響。我覺得老師這邊舉的例子很好,台北市就只有一條仁愛路,因此我們不用特別說明台北市大安區仁愛路大家也知道是指那一條仁愛路,不過新北市有不止一條仁愛路,永和、汐止都有,所以我們就要將完整區名也告訴對方才不會造成混淆。
Main function block
我們可以將這部分看成:現在所在的函數 ( function ) 名字叫做 main。
Statements
函數中告訴電腦要做甚麼事的句子就叫做 statement,像第7、9行都是 main function 的statement。
而要切記的是,每一個statement結束後面一定要加上;
,就是一個句號的概念。
“Hello world! \n” 為一字串 ( string ),其中\n
在程式語言中稱作跳脫序列 (escape sequence),代表換行,因此我們可以看到在輸出結果的圖中,「Hello world!」下面有一行空行,但是\n
不會顯示在螢幕上。
常用的跳脫序列
Escape sequence | effect |
---|---|
\n | 換行 |
\t | = Tab |
\b | = Backspace |
\a | 發出警示聲 |
\\ | 出現 \ |
\’ | 出現 ‘ |
\” | 出現 ” |
另外,return 0;
是絕對不可少的ㄛ!之後在介紹函數時會有更詳細的解釋!
Comments
Comment其實就是我們常聽到的註解,註解中可以打任何文字,在visual studio中我們可以以//
或/*... */
來表示,也就是第一張圖中綠色的字,值得注意的是,//
只能用來註解同一行字,/*... */
中間的程式碼則可以橫跨好幾行。