函數宣告
函數 ID 前面加上其傳回類型,後面接著其參數清單,稱為 函數宣告 或 函數原型。 原型會在使用之前通知編譯器函數的格式及存在。 編譯器會檢查函數呼叫的參數與函數宣告中的參數之間是否不相符。 編譯器也會使用宣告來進行引數類型檢查及引數轉換。
不容許隱含的函數宣告: 您必須先明確宣告每個函數,然後才能呼叫它。
如果在對函數進行呼叫時看不到函數宣告,編譯器會假設隱含宣告 extern int func(); 。不過,為了符合 C99,您應該先明確地建立每一個函數的原型,然後再對它進行呼叫。
所有函數宣告都具有下列格式:
Function declaration syntax >>-+-------------------------+--+--------------------+----------> '-storage_class_specifier-' '-function_specifier-' >--return_type_specifier--function_declarator--;---------------><
附註: 當 function_declarator 納入尾端傳回類型時, return_type_specifer 必須是auto. 如需尾端傳回類型的相關資訊,請參閱 尾端傳回類型 (C++11)。
此外,為了與 C++ 相容,您可以使用 屬性 來修改函數的內容。 它們在 函數屬性中說明。