跳轉到內容

程式設計基礎/程式碼塊

來自華夏公益教科書,開放書籍,開放世界

程式碼塊,有時稱為複合語句,是原始碼的詞法結構,它們被分組在一起。塊由一個或多個宣告和語句組成。允許建立塊(包括巢狀在其他塊中的塊)的程式語言稱為塊結構化程式語言。塊是結構化程式設計的基礎,在結構化程式設計中,控制結構是由塊組成的。[1]

複合語句的必要性

[編輯 | 編輯原始碼]

在許多程式語言中,只能列出一個語句作為控制結構的動作部分。

if (expression)
    statement
else
    statement

通常,我們希望執行不止一個語句。這個問題透過建立程式碼塊或複合語句來解決。對於使用大括號 {} 來指定程式碼塊的程式語言,複合 if-then-else 語句類似於

if(expression)
{
    statement;
    statement;
}
else
{
    statement;
    statement;
}

因為程式設計師經常忘記他們只能在一個控制結構中列出一個語句作為動作部分,所以程式設計行業鼓勵使用縮排(以清楚地看到動作部分)和始終使用複合語句(大括號),即使只有一個語句。因此

if(expression)
{
    statement;
}
else
{
    statement;
}

以這種方式編寫程式碼,如果程式設計師透過將更多語句新增到動作 true 或動作 false 來修改程式碼,他們將不會引入編譯器或邏輯錯誤。在任何需要使用控制結構中的複合語句的語言中,使用縮排和大括號應該成為標準實踐。

縮排和結束塊

[編輯 | 編輯原始碼]

其他程式語言需要透過縮排或某種型別的結束塊語句來明確指定程式碼塊。例如,Python 使用縮排來指示程式碼塊中的語句。

if expression:
    statement
    statement
else:
    statement
    statement

Lua 使用一個結束塊保留字

if expression then
    statement
    statement
else
    statement
    statement
end

這些程式語言中的一般 if-then-else 結構相似,所需的或預期的縮排也是如此。區別在於用來指定程式碼塊的語法。

關鍵詞

[編輯 | 編輯原始碼]
複合語句的另一個名稱。
複合語句
由一個或多個語句組成的程式碼單元。

參考文獻

[編輯 | 編輯原始碼]
華夏公益教科書