共用方式為


複合陳述式 (C)

複合陳述式 (也稱為"阻隔") 通常就會顯示為本文的另一個陳述式,例如如果陳述式。 宣告和型別將告訴您的表單與意義可以出現在標頭的複合陳述式的宣告。

語法

  • 複合陳述式
    { declaration-list optstatement-listopt**}**

  • 宣告清單
    宣告

    宣告清單宣告

  • 陳述式清單
    statement

    陳述式清單陳述式

如果沒有宣告,它們必須放在之前的任何陳述式。 複合陳述式的開頭宣告每個識別項的範圍會從其宣告點延伸區塊的結尾。 它是在區塊內的 [看得見的除非相同的識別項的宣告存在於內部的區塊。

複合陳述式中的識別項假設自動除非明確地宣告與否則註冊靜態,或extern,除非函式,其中僅能extern。 您可以將它extern中的函式宣告和函式規範仍然會extern。

無法配置儲存體,如果變數不允許初始化或複合陳述式加上的儲存類別中宣告的函式extern。 宣告參考的外部變數或函式定義其他地方。

在包含區塊中宣告變數自動註冊關鍵字已重新配置,而且如果有需要時,初始化每次輸入複合陳述式。 複合陳述式結束後,這些變數是未定義。 如果在區塊內宣告的變數有靜態屬性,將變數初始化時程式執行開始,並保留它的值在整個程式。 請參閱儲存類別 如需有關資訊 靜態

這個範例說明了複合陳述式:

if ( i > 0 ) 
{
    line[i] = x;
    x++;
    i--;
}

在這個範例中,如果i大於 0,在複合陳述式內的所有陳述式執行順序。

請參閱

概念

陳述式 (C)