天天看點

C函數、函數定義與聲明

c 函數簡介

函數是一組一起執行一個任務的語句。每個 c 程式都至少有一個函數,即主函數 main() ,所有簡單的程式都可以定義其他額外的函數。

可以把代碼劃分到不同的函數中。但在邏輯上,劃分通常是根據每個函數執行一個特定的任務來進行的。

函數聲明告訴編譯器函數的名稱、傳回類型和參數。函數定義提供了函數的實際主體。

c 标準庫提供了大量的程式可以調用的内置函數。

函數定義 

c 語言中的函數定義的一般形式如下:

在 c 語言中,函數由一個函數頭和一個函數主體組成。下面列出一個函數的所有組成部分:

傳回類型:一個函數可以傳回一個值。return_type 是函數傳回的值的資料類型。有些函數執行所需的操作而不傳回值,在這種情況下,return_type 是關鍵字 void。

函數名稱:這是函數的實際名稱。函數名和參數清單一起構成了函數簽名。

參數:參數就像是占位符。當函數被調用時,向參數傳遞一個值,這個值被稱為實際參數。參數清單包括函數參數的類型、順序、數量。參數是可選的,也就是說,函數可能不包含參數。

函數主體:函數主體包含一組定義函數執行任務的語句。

return語句

return 表示從被調函數傳回到主調函數繼續執行,傳回時可附帶一個傳回值,傳回值可以是一個常量,變量,或是表達式,沒有傳回值的函數,傳回void。

它的作用是:結束正在運作的函數,并傳回函數值。

return傳回的表達式類型與函數聲明的傳回類型應該一緻,隻有當編譯器通過尋常算術轉化把表達式的類型轉換成為正确的類型時,才允許傳回類型與函數聲明的類型不同。

return 傳回時表達式可以加上(),如 return (x),但是文法上并為作此要求。

函數聲明

函數聲明會告訴編譯器函數名稱及如何調用函數。函數的實際主體可以單獨定義。

函數聲明包括以下幾個部分:

在函數聲明中,參數的名稱并不重要,隻有參數的類型是必需的,是以下面也是有效的聲明:

當在一個源檔案中定義函數且在另一個檔案中調用函數時,函數聲明是必需的。在這種情況下,您應該在調用函數的檔案頂部聲明函數。

繼續閱讀