在定義時,若省略了函式返回值的型別,則預設為int型。
在同一程式中,函式名必須唯一;同一函式中,行參名也必須唯一。
行參之間用逗號隔開,可以沒有行參。
除行參外,凡是在函式中用到的變數或是其它函式必須先進行宣告,再使用。
行參和函式體中的變數只在函式被呼叫時才臨時分配儲存單元。
函式的定義時平行的,不能再乙個函式內部再定義函式。
函式的返回值通過return語句返回。函式定義的型別決定函式返回值的型別,若不一致,則自動轉換為函式定義型別。
為了明確說明函式無返回值,可將函式的返回值型別定義為「void」,稱為「空型別」。
實參與行參在個數、型別及次序上應保持一致。
函式必須先定義或宣告,後呼叫。返回值型別為int或char的函式可例外。
實參向行參傳遞資料時按位置對應傳遞,而不是按名字對應傳遞。
當實參表包含多個引數時,對實參表的求值順序因c語言的版本不同而有所不同。如max(i,++i)。
傳值呼叫:實參向行參傳遞的資料是一種單向傳遞。實參的值傳遞給對應的行參,但行參的值不回回傳給實參。
巢狀呼叫:函式的定義不允許巢狀,但函式的呼叫可以巢狀,即在呼叫乙個函式的過程中,又呼叫另乙個函式。
遞迴呼叫:函式可以直接或間接地自己呼叫自己。(遞推是由已知求未知,遞迴則相反)。
凡是未在呼叫之前定義的函式,c編譯程式預設其返回值型別為int。函式宣告中的行參名是一種虛設,它們可以是任意的使用者識別符號,既不必與函式首部中的行參名一致,又可與程式中任意的使用者識別符號相同。因此,引數名可以省略。但引數的型別、個數和次序必須與函式定義的首部保持一致。對於返回值為其它型別的函式,若把函式定義放在呼叫之後,則應在呼叫之前對函式進行宣告。
函式的宣告與定義不同。定義是寫出函式的完整形式,而宣告是告訴系統此函式的返回值型別、引數型別及個數。
若函式的返回值型別為int或char,則可不必進行函式宣告。但此時系統無法對引數做型別檢查。
若定義在前,呼叫在後,則可不進行函式宣告。
放在呼叫函式的宣告部分,則只有此函式可以識別被調函式。
放在所有函式的外部且在被呼叫之前,則函式宣告位置後面的所有函式均可識別被呼叫函式。
呼叫庫函式時,要在程式的開頭使用"#include"來包含相關標頭檔案,就是因為標頭檔案中包含了這些庫函式的宣告。
4 C 函式模板
include include include include using namespace std 自定義資料型別 class person public string mname int mage void test01 it 解引用,解出來是person資料型別 這裡我們只需要看 中是啥,就...
C 系列 4 C 函式過載
以前有乙個笑話,國有兩個體育專案大家根本不用看,也不用擔心。乙個是桌球,乙個是男足。前者是 誰也贏不了!後者是 誰也贏不了!這便是自然語言被過載了!函式過載 是函式的一種特殊情況,c 允許在同一作用域中宣告幾個功能類似的同名函式,這些同名函式的形參列表 引數個數 或 型別 或 順序 必須不同,常用來...
練習4 c 基礎
using system using system.collections.generic using system.linq using system.text namespace列舉 列舉可用來儲存字串與數字的值對,相當於乙個對照表 常用方法 getname getvalue parse 宣告乙...