本節的其餘部分說明此清單中摘要說明變數類型的宣告形式和意義。 特別是其餘各節會說明如何宣告:
| 變數的類型 | 說明 |
|---|---|
| 簡單變數 | 具有整數或浮點類型的單一值變數 |
| 陣列 | 由具有相同類型的專案集合所組成的變數 |
| 指標 | 指向其他變數並包含變數位置的變數(以位址的形式)而不是值 |
| 列舉變數 | 具有整數型別的簡單變數,其中包含一組具名整數常數中的一個值 |
| 結構 | 由可具有不同類型之值集合所組成的變數 |
| 等位 | 由數個不同類型值組成的變數,這些值佔用相同的儲存空間 |
宣告子是宣告的一部分,可指定要引入程序的名稱。 它可以包含修飾詞,例如 * (pointer-to) 和任何Microsoft呼叫慣例關鍵詞。
Microsoft 專屬的
在此宣告子中,
__declspec(thread) char *var;
char 是型別規範, __declspec(thread) 而 * 是修飾詞,而 var 是標識符名稱。
結束 Microsoft 特定內容
您可以使用宣告子來宣告值陣列、值指標,以及傳回指定型別值的函式。 宣告子會出現在陣列中,以及本節稍後所述的指標宣告。
語法
declarator:
pointer
選擇direct-declarator
direct-declarator:
identifier
(
declarator
)
direct-declarator
[
constant-expression
選擇]
direct-declarator
(
parameter-type-list
)
direct-declarator
(
identifier-list
選擇)
pointer:
*
type-qualifier-list
選擇
*
type-qualifier-list
選擇pointer
type-qualifier-list:
type-qualifier
type-qualifier-list
type-qualifier
當宣告子包含未修改的標識碼時,所宣告的專案具有基底類型。 如果標識子左邊出現星號 (*), 類型會修改為指標類型。 如果標識子後面接著方括號 ([ ]),則類型會修改為數位類型。 如果括弧遵循標識碼,則類型會修改為函式類型。 如需解譯宣告內優先順序的詳細資訊,請參閱 解譯更複雜的宣告子。
每個宣告子都會宣告至少一個標識碼。 宣告子必須包含類型規範,才能成為完整宣告。 型別規範會提供:數位型別規範會提供:數位型別的專案類型、指標類型尋址的物件類型,或函式的傳回型別。
本節 稍後會更詳細地討論陣列和 指標 宣告。 下列範例說明幾個簡單的宣告子形式:
int list[20]; // Declares an array of 20 int values named list
char *cp; // Declares a pointer to a char value
double func( void ); // Declares a function named func, with no
// arguments, that returns a double value
int *aptr[10]; // Declares an array of 10 pointers
Microsoft 專屬的
Microsoft C 編譯程式不會限制可以修改算術、結構或等位型別的宣告子數目。 此數目只受限於可用的記憶體。
結束 Microsoft 特定內容