就是指函數(shù)名相同,比如,int
網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、成都微信小程序、集團企業(yè)網(wǎng)站建設(shè)等服務項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了海港免費建站歡迎大家使用!
func()與int
func(int),
C語言里沒有函數(shù)重載,所以這樣寫是不行的(C++里是可以的)。
可以重名,不過函數(shù)的參數(shù)類型或數(shù)量要不一致,例子如下:
//遞歸求階乘
int calc(int num){
if(num==0){
return 0;
}else{
return num*calc(num-1);
}
}
//遞歸求任意一個整數(shù)的整數(shù)次方
int calc(int num,int count){
if(num==0){
return 0;
}else if(count == 0){
return 1;
}else{
return num*calc(num,count-1);
}
}
這兩個函數(shù)方法名稱完全一樣,但是參數(shù)不一樣,這種做法有一個叫法,叫函數(shù)的重載
這不是兩個函數(shù),這是一個函數(shù),extern "C" int listid(int id, OUT *);
中的extren通知編譯器int listid(int id, OUT *)不在本源代碼中實現(xiàn),
"c"通知編譯器用C調(diào)用方式調(diào)用在另外的一個源程序的函數(shù),
C語言默認的調(diào)用方式就是C調(diào)用 C++就不同了,,所以最好加個"c"
另:調(diào)用方式規(guī)定了調(diào)用的時候輸入?yún)?shù)的順序和函數(shù)返回后輸入?yún)?shù)占用的空間由調(diào)用程序釋放還是由函數(shù)釋放。這東西不一定要太懂,知道用"c"去考慮調(diào)用方式就可以了.
參數(shù)不同也是可以的,但是執(zhí)行一定會有錯誤,而且應該不能出現(xiàn)同名不同參數(shù)的的令一個函數(shù)。要不連接的時候就找不到正確的函數(shù)。
如果是C++,有重載機制,不一定會出錯(如果兩個重名函數(shù)的參數(shù)列表不相同的話)
如果是C
#include了包含那個庫函數(shù)的頭文件的情況下,再定義一個重名函數(shù),就會出錯
網(wǎng)頁名稱:c語言同名函數(shù)問題 c語言函數(shù)名和變量同名
鏈接分享:http://muchs.cn/article12/dophgdc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務、商城網(wǎng)站、搜索引擎優(yōu)化、Google、手機網(wǎng)站建設(shè)、網(wǎng)站設(shè)計公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)