什麼是程式語法?

在電腦世界中,命令列語法指的是為了讓軟體能夠讀取並執行的命令字句。舉例來說,命令列語法可以指定大小寫與何種檔案可以使指令以不同方式運作。

若語法不正確,則只是單字和符號串聯在一起,而無法產生可以讓人理解的語句。

程式語法和語言非常相似

將程式語法聯想成其他像是英文、德文、西班牙文等語言,可以幫助你更容易了解它的性質。

人類語言語法是將特定的字詞與標點符號已正確的方式排列,來構成一句有意義的語句。若排列方式不正確,就無法讓人理解該句的語意。

和人類語法相似,電腦命令列的語法結構必須透過字詞、符號的正確排列構成系統可讀取並執行的指令。

 

程式語法扮演的角色是什麼?

你會期待一個只會說俄文的人讀懂日文嗎?或者是只會說英文的人讀懂義大利文?同樣的,不同程式 (就像其他語言一樣) 也有不同的語法規則必須符合,以便其他軟體 (或他國語言人士) 可以辨識你的請求。

舉例而言,你不會說 「我走大下山」,因為中文字句排列已經有約定俗成的規範,而命令列語法也有相同的特定規則,而且只要一個小小的錯誤,程式就無法辨認你的指令。

下面將用 ping 指令來示範何謂正確的語法,這是最常見用來檢查網路連線能力與品質的語法,完整語法為:

ping 192.168.1.1

這個語法完全正確,命令行解譯器收到這個命令後就會開始檢測設備的網路連線功能是否正常。但如果像這樣把 ping 移到句子尾端,就會因為語法不正確導致電腦就無法讀取並執行命令。像這種錯誤就稱之為【語法錯誤】,必須將錯誤修正後,電腦才可以正確執行命令。

192.168.1.1 ping

除了簡易的語法(如上述的 ping) 外,當複雜度提升時,發生語法錯誤的機率也會相對提高。

這些錯誤不僅會出現在上述的例子,也可能在建立 HTML 和 JavaScript 時發生,可想而知當需要設計 Windows XP 這樣龐大的系統時,會有多少潛在的語法錯誤。因此不僅是語法本身須正確讓程式讀取,語法本身的正確應用也很重要。