C語言的函式

2021-06-15 11:06:45 字數 900 閱讀 9405

2013/7/11 09:28

c語言函式

c語言中函式由函式名唯一標示。函式名是乙個識別符號,不能與其他函式同名。但在c++中函式允許重名。

函式的返回型別,可以是任何基本資料和指標。

不返回任何值時應定義返回型別為void.gcc預設返回型別是int.

定義函式時,函式名後面括號內的是變數是形參;呼叫函式時,函式名後面括號內的是實參。

c語言規定,實參對形參的資料傳遞是單向的值傳遞。實參的值和形參的值分別存放在不同的記憶體單元內。

函式體內定義的變數在函式體外是不可見的,主函式也不例外,外部不可訪問。

形參和函式體內部定義的變數都是區域性變臉,只有在發生函式呼叫時,區域性變數才會被分配記憶體單元,呼叫結束後,其所佔的記憶體單元被系統**。

事實上,c語言中一對大括號標示了乙個變數的作用域。復合語句中定義的標量只能在該復合語句中使用。

linux中預設main函式的返回型別為int,main函式通過向作業系統返回乙個數來報告執**況,通常返回0表示程式正常結束。但作業系統一般忽略main函式的返回值。

如果呼叫庫函式,要將相應的標頭檔案包含在原始檔中。.h是標頭檔案的字尾,表示它是乙個標頭檔案(header file).

函式可以巢狀呼叫,但不可以巢狀定義。

在呼叫乙個函式的過程中又出現直接或者間接的呼叫該函式本身,稱為函式的遞迴呼叫。

動態變數是指程式執行過程中根據需要動態分配記憶體空間的變數。靜態變數指在程式執行期間分配固定的儲存空間的變數。

動態變數:函式的形參,函式內定義非static變數。

靜態變數:函式內定義的static變數,全域性變數。

靜態變數在函式呼叫結束後並不會銷毀。

規模較大的程式往往由多個原始檔組成,如果乙個原始檔的程式**要用到另外乙個檔案的內定義的全域性變數,就要使用extern對該全域性變數進行宣告。

c語言的函式

通過下面的例子,我們可以發現a和b的位址是不同的,這就是所謂的 傳值呼叫 a和b不是同乙個變數,函式傳參的本質是複製乙份變數副本 void func int b int main void void func1 int b void func2 int b 10 int main int argc,...

C語言 函式

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

c語言 函式

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