C語言基礎5

?艇搀、函數(shù)分類

回顧


它們都是函數(shù)腋颠,都實現(xiàn)了某?功能袋狞。

? printf 輸出函數(shù)涮坐,?于輸出?個信息

? scanf 輸?函數(shù)凄贩,?于從鍵盤輸??個信息

? strlen 求字符串長度函數(shù),?于求指定字符串的長度

? strcpy 字符串拷貝函數(shù)袱讹,?于實現(xiàn)字符串的賦值



什么是函數(shù)

函數(shù)是具有特定功能的代碼段疲扎。

通俗來說:?連串語句組合在?起,實現(xiàn)了某?功能廓译,我

們?yōu)樗鼈兤鹆?個名字评肆。

之后就可以使?這個名字來替代這些語句

函數(shù)的使?可以省去重復代碼的編寫,??簡化程序非区,提

?開發(fā)效率瓜挽。



函數(shù)分類

從函數(shù)定義上來看,函數(shù)可分為:

庫函數(shù)(系統(tǒng)提供好的函數(shù)征绸,例如printf)

??定義函數(shù)(開發(fā)者??寫的函數(shù))

如何定義??的函數(shù)久橙?



?、函數(shù)的聲明和定義

函數(shù)的定義四要素

函數(shù)定義的四要素分別為:

返回值類型 :函數(shù)的結果值類型管怠,函數(shù)不能返回數(shù)組淆衷。

指定返回類型是─oid類型說明函數(shù)沒有返回值。

函數(shù)名 :函數(shù)名命名規(guī)范和變量名命名規(guī)范?樣渤弛。

參數(shù)列表 : 每個形式參數(shù)的前?說明其類型祝拯,即使?個

參數(shù)具有相同的數(shù)據(jù)類型,也必須對每個形式參數(shù)分別進

?類型說明她肯。形式參數(shù)?逗號進?分隔佳头,就算沒有參數(shù)函

數(shù)后?的()也不能省略,可以寫成(─oid)。

函數(shù)體 :函數(shù)功能的實現(xiàn)。

函數(shù)的定義形式

返回值類型 函數(shù)名(形式參數(shù)列表) {

void

int

char

float

..

語句

return 返回值;

}

?參數(shù)?返回值函數(shù)舉例

void hello(void) {

printf("Hello,Lanou"):

}

?參數(shù)有返回值函數(shù)舉例

int peopleCount(void) {

return 33;

}

有參數(shù)?返回值函數(shù)舉例

void printNumber(int x) {

printf("number is %d", x);

}


有參數(shù)有返回值函數(shù)舉例

int max(int a, int b) {

return a > b ? a : b;

}

返回值

1函數(shù)的返回值稱為函數(shù)的值甫窟,只能通過return語句返回給

主調函數(shù)。

2?個函數(shù)只能有?個返回值亭珍。

3函數(shù)即使沒有返回值也可以使?return來結束函數(shù)的執(zhí)

?敷钾,回到主調函數(shù)。

return后?的語句不再執(zhí)?肄梨。

函數(shù)聲明

嚴格的函數(shù)通常包括三部分:函數(shù)聲明阻荒、函數(shù)定義、以及函數(shù)調?众羡。

函數(shù)聲明:指的就是函數(shù)的描述财松,也叫函數(shù)原型。

? 函數(shù)聲明:

1纱控、函數(shù)定義出現(xiàn)在主調函數(shù)之前辆毡,可以省略函數(shù)聲明。

2甜害、函數(shù)定義出現(xiàn)在主調函數(shù)之后舶掖,需要提前聲明函數(shù)。

函數(shù)聲明盡管可以省略尔店,從規(guī)范來講眨攘,不要省略。


三嚣州、函數(shù)調?

1函數(shù)調?由函數(shù)名和跟隨其后的實際參數(shù)列表組成鲫售,其中

實際參數(shù)列表?()括起來。函數(shù)調?后邊始終跟著分號该肴,

即使沒有參數(shù)也要加上()情竹。

2函數(shù)的調?, 會產(chǎn)?程序的跳轉匀哄。



?參數(shù)?返回值函數(shù)調?舉例

int main(int argc, const

char * argv[]) {

//函數(shù)上?的語句 ? ??

hello();

//函數(shù)下?的語句

return 0;

}

(上面寫的和下面寫的是調用舉例)

─ void hello(─void) {

printf(“Hello,Lanou");


有參數(shù)有返回值函數(shù)調?舉例

int main(int argc, const

char * argv[]) {

//函數(shù)上?的語句

int ret = max(3, 5);

//函數(shù)下?的語句

return 0;

}

int max(int a, int b) {

return a > b ? a : b;

}

函數(shù)調?特殊說明

? 函數(shù)調?秦效,實參可為表達式

? 函數(shù)調?,返回值可以參與表達式運算


int main(int argc, const char *argv[]) {

//函數(shù)上?的語句

int a = 8;

int ret = max(3 + a, 5) + 10;

//函數(shù)下?的語句

return 0;

}

四涎嚼、形參實參

形參(形式參數(shù))

?出現(xiàn)在函數(shù)定義中阱州,以假名字來表?函數(shù)調?時需要提供

的值。作?范圍為整個函數(shù)范圍法梯。

?實參(實際參數(shù))

?出現(xiàn)在函數(shù)調?中的表達式苔货。

注意:函數(shù)調?中,形參會拷貝實參內容立哑,傳遞參數(shù)是給

函數(shù)傳送信息的?種?法夜惭。


函數(shù)聲明與定義的位置

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?頭?件(xxxx.h)

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 函數(shù)聲明?般寫在頭?件?

源?件 ?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?實現(xiàn)?件(xxxx.m)

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 函數(shù)定義?般寫在實現(xiàn)?件?


函數(shù)嵌套調?

C語?不允許函數(shù)嵌套定義,但是允許函數(shù)嵌套調?刁憋。

? 函數(shù)嵌套定義 : 在?個函數(shù)定義內再去定義?個函數(shù)滥嘴;

? 函數(shù)嵌套調? : 在?個函數(shù)內去調?另?個函數(shù)木蹬。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末至耻,一起剝皮案震驚了整個濱河市若皱,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌尘颓,老刑警劉巖走触,帶你破解...
    沈念sama閱讀 221,198評論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異疤苹,居然都是意外死亡互广,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評論 3 398
  • 文/潘曉璐 我一進店門卧土,熙熙樓的掌柜王于貴愁眉苦臉地迎上來惫皱,“玉大人,你說我怎么就攤上這事尤莺÷梅螅” “怎么了?”我有些...
    開封第一講書人閱讀 167,643評論 0 360
  • 文/不壞的土叔 我叫張陵颤霎,是天一觀的道長媳谁。 經(jīng)常有香客問我,道長友酱,這世上最難降的妖魔是什么晴音? 我笑而不...
    開封第一講書人閱讀 59,495評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮缔杉,結果婚禮上锤躁,老公的妹妹穿的比我還像新娘。我一直安慰自己或详,他們只是感情好进苍,可當我...
    茶點故事閱讀 68,502評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著鸭叙,像睡著了一般觉啊。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上沈贝,一...
    開封第一講書人閱讀 52,156評論 1 308
  • 那天杠人,我揣著相機與錄音,去河邊找鬼宋下。 笑死嗡善,一個胖子當著我的面吹牛,可吹牛的內容都是我干的学歧。 我是一名探鬼主播罩引,決...
    沈念sama閱讀 40,743評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼枝笨!你這毒婦竟也來了袁铐?” 一聲冷哼從身側響起揭蜒,我...
    開封第一講書人閱讀 39,659評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎剔桨,沒想到半個月后屉更,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,200評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡洒缀,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,282評論 3 340
  • 正文 我和宋清朗相戀三年瑰谜,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片树绩。...
    茶點故事閱讀 40,424評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡萨脑,死狀恐怖,靈堂內的尸體忽然破棺而出饺饭,到底是詐尸還是另有隱情砚哗,我是刑警寧澤,帶...
    沈念sama閱讀 36,107評論 5 349
  • 正文 年R本政府宣布砰奕,位于F島的核電站蛛芥,受9級特大地震影響,放射性物質發(fā)生泄漏军援。R本人自食惡果不足惜仅淑,卻給世界環(huán)境...
    茶點故事閱讀 41,789評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望胸哥。 院中可真熱鬧涯竟,春花似錦、人聲如沸空厌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,264評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽嘲更。三九已至筐钟,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間赋朦,已是汗流浹背篓冲。 一陣腳步聲響...
    開封第一講書人閱讀 33,390評論 1 271
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留宠哄,地道東北人壹将。 一個月前我還...
    沈念sama閱讀 48,798評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像毛嫉,于是被迫代替她去往敵國和親诽俯。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,435評論 2 359

推薦閱讀更多精彩內容

  • 1承粤、c語言的函數(shù)有以下特點: (1)才源程序由函數(shù)組成暴区,一個主函數(shù)main()+若干其他函數(shù) C程序中的函數(shù)類似文...
    滕王閣序閱讀 1,345評論 0 6
  • 86.復合 Cases 共享相同代碼塊的多個switch 分支 分支可以合并, 寫在分支后用逗號分開闯团。如果任何模式...
    無灃閱讀 1,377評論 1 5
  • 注:這是第三遍讀《C語言深度解剖》,想想好像自從大學開始就沒讀完過幾本書颜启,其中譚浩強的那本《C語言程序設計(第四版...
    HavenXie閱讀 1,733評論 1 6
  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young閱讀 3,817評論 1 10
  • 少數(shù)服從多數(shù)的原則下,少數(shù)即是錯誤浪讳? 第四季奇葩說里有個議題“職場中要不要當‘邀功精’缰盏?” 這是一個很日常的話題,...
    唐阿元閱讀 790評論 0 3