C語言 函式

2021-10-06 09:17:38 字數 1756 閱讀 7623

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

您可以把**劃分到不同的函式中。如何劃分**到不同的函式中是由您來決定的,但在邏輯上,劃分通常是根據每個函式執行乙個特定的任務來進行的。

函式宣告告訴編譯器函式的名稱、返回型別和引數。函式定義提供了函式的實際主體。

c 標準庫提供了大量的程式可以呼叫的內建函式。例如,函式strcat()用來連線兩個字串,函式memcpy()用來複製記憶體到另乙個位置。

函式還有很多叫法,比如方法、子例程或程式,等等。

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

return_type function_name( parameter list )

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

以下是max()函式的源**。該函式有兩個引數 num1 和 num2,會返回這兩個數中較大的那個數:

/* 函式返回兩個數中較大的那個數 */ int max(int num1, int num2)

函式宣告會告訴編譯器函式名稱及如何呼叫函式。函式的實際主體可以單獨定義。

函式宣告包括以下幾個部分:

return_type function_name( parameter list );
針對上面定義的函式 max(),以下是函式宣告:

int max(int num1, int num2);
在函式宣告中,引數的名稱並不重要,只有引數的型別是必需的,因此下面也是有效的宣告:

int max(int, int);
當您在乙個原始檔中定義函式且在另乙個檔案中呼叫函式時,函式宣告是必需的。在這種情況下,您應該在呼叫函式的檔案頂部宣告函式。

建立 c 函式時,會定義函式做什麼,然後通過呼叫函式來完成已定義的任務。

當程式呼叫函式時,程式控制權會轉移給被呼叫的函式。被呼叫的函式執行已定義的任務,當函式的返回語句被執行時,或到達函式的結束括號時,會把程式控制權交還給主程式。

呼叫函式時,傳遞所需引數,如果函式返回乙個值,則可以儲存返回值。例如:

#include /* 函式宣告 */ int max(int num1, int num2); int main () /* 函式返回兩個數中較大的那個數 */ int max(int num1, int num2)

把 max() 函式和 main() 函式放一塊,編譯源**。當執行最後的可執行檔案時,會產生下列結果:

max value is : 200
如果函式要使用引數,則必須宣告接受引數值的變數。這些變數稱為函式的形式引數

形式引數就像函式內的其他區域性變數,在進入函式時被建立,退出函式時被銷毀。

當呼叫函式時,有兩種向函式傳遞引數的方式:

呼叫型別

描述傳值呼叫

該方法把引數的實際值複製給函式的形式引數。在這種情況下,修改函式內的形式引數不會影響實際引數。

引用呼叫

通過指標傳遞方式,形參為指向實參位址的指標,當對形參的指向操作時,就相當於對實參本身進行的操作。

預設情況下,c 使用傳值呼叫來傳遞引數。一般來說,這意味著函式內的**不能改變用於呼叫函式的實際引數。

C語言 函式

1 實參和形參在數量上,型別上,順序上應嚴格一致,否則會發生 型別不匹配 錯誤。2 實參可以是常量,變數,表示式甚至是函式。但是在傳遞給函式前,必須有確定的值。3 形參變數只有在被呼叫時才分配記憶體單元,只有在函式內部有效,函式結束後不能再使用。4 實參和形參佔據不同的儲存單元。5 函式預設採用值傳...

c語言 函式

函式是實現某個功能的 段 函式之間的關係是並列的,不能巢狀 函式的定義 函式的返回值型別 函式名 引數的型別 引數名1.正常的函式有三部分 1.函式的宣告 2.函式的定義 3.函式的呼叫 如果函式在定義之前被呼叫的話,需要對函式提前進行宣告,當然在定義之後在呼叫如果沒有宣告也不會提示錯誤 函式的返回...

C語言函式

和變數 控制流 條件一樣 函式也是現代程式語言的基本組成部分。他可以使我們在應用中重複利用一塊 對於 的組織和維護是很有必要的。您將在ios和os x的框架中發現大量的例子。像其他的基礎元素一樣,object c的函式也是建立在c語言函式之上的。這章我們將介紹c語言最重要的方面,包括基本語法 宣告和...