c語言函數宣告需要給出函數名稱、傳回值類型、參數列表【重點是參數類型】等與該函數有關的信息,格式為【dataType functionName( dataType1 param1, dataType2 param2 ... );】。
C語言程式碼由上到下依序執行,原則上函數定義要出現在函數呼叫之前,否則就會報錯。但在實際開發中,經常在函數定義之前使用它們,這個時候就需要事先聲明。
所謂宣告(Declaration),就是告訴編譯器我要使用這個函數,你現在沒有找到它的定義不要緊,請不要報錯,稍後我會把定義補上。
函數宣告的格式非常簡單,相當於去掉函數定義中的函數體,並在最後加上分號;,如下所示:
dataType functionName( dataType1 param1, dataType2 param2 ... );
也可以不寫形參,只寫數據類型:
dataType functionName( dataType1, dataType2 ... );
函數宣告給出了函數名稱、傳回值類型、參數列表(重點是參數類型)等與該函數有關的信息,稱為函數原型(FunctionPrototype)。函數原型的作用是告訴編譯器與函數有關的信息,讓編譯器知道函數的存在,以及存在的形式,即使函數暫時沒有定義,編譯器也知道如何使用它。
有了函數聲明,函數定義就可以出現在任何地方了,甚至是其他文件、靜態連結庫、動態連結庫等。
【實例1】定義一個函數 sum(),計算從 m 加到 n 的和,並將 sum() 的定義放到 main() 後面。
#include <stdio.h> //函数声明 int sum(int m, int n); //也可以写作int sum(int, int); int main(){ int begin = 5, end = 86; int result = sum(begin, end); printf("The sum from %d to %d is %d\n", begin, end, result); return 0; } //函数定义 int sum(int m, int n){ int i, sum=0; for(i=m; i<=n; i++){ sum+=i; } return sum; }
我們在main() 函數中呼叫了sum() 函數,編譯器在它前面雖然沒有發現函數定義,但是發現了函數聲明,這樣編譯器就知道函數怎麼使用了,至於函數體到底是什麼,暫時可以不用操心,後續再把函數體補上就好。
推薦教學: 《c語言教學》
以上是c語言函數宣告格式的詳細內容。更多資訊請關注PHP中文網其他相關文章!