7.4 函數(shù)的說明
7.4.1 函數(shù)說明的形式
在C語言中,除了主函數(shù)外,對于用戶定義的函數(shù)遵循“先定義,后使用”的規(guī)則。凡是未在調(diào)用前定義的函數(shù),C編譯程序都默認(rèn)函數(shù)的返回值為int類型。對于返回值為其他類型的函數(shù),若把函數(shù)的定義放在調(diào)用之后,應(yīng)該在調(diào)用之前對函數(shù)進(jìn)行說明(或稱為函數(shù)原型說明),函數(shù)說明的一般形式如下:
類型名函數(shù)名(參數(shù)類型1,參數(shù)類型2,……)
如double add(double,double)。也可采用下面的形式:
類型名函數(shù)名(參數(shù)類型1 參數(shù)名1,參數(shù)類型2 參數(shù)名2,……)
如double add(double p, double q)。此處的參數(shù)名完全是虛設(shè)的,它們可以是任意的用戶標(biāo)識符,既不必與函數(shù)首部中的形參名一致,又可以與程序中的任意用戶標(biāo)識符同名,實(shí)際上,參數(shù)名可以省略。函數(shù)說明語句中的類型名必須與函數(shù)返回值的類型一致。
函數(shù)說明可以是一條獨(dú)立的說明語句,如:
double add(double,double);
也可以與普通變量一起出現(xiàn)在同一個(gè)類型定義語句中,如:
double x,y,add(double,double);
對函數(shù)進(jìn)行說明能使C語言的編譯程序在編譯時(shí)進(jìn)行有效的類型檢查。當(dāng)調(diào)用函數(shù)時(shí),若實(shí)參的類型與形參的類型不能賦值兼容而進(jìn)行非法轉(zhuǎn)換時(shí),C編譯程序?qū)?huì)發(fā)現(xiàn)錯(cuò)誤并報(bào)錯(cuò);當(dāng)實(shí)參的個(gè)數(shù)與形參的個(gè)數(shù)不同時(shí),編譯程序也將報(bào)錯(cuò)。使用函數(shù)說明能及時(shí)通知程序員出錯(cuò)的位置,從而保證了程序能正確運(yùn)行。
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |