沒有返回值的函數(shù)通常用來(lái)做一些數(shù)據(jù)的修改或?qū)崿F(xiàn)些內(nèi)部功能。而有返回值的函數(shù)通常作用為數(shù)據(jù)存儲(chǔ)。當(dāng)然實(shí)際上沒有那么明顯的界限,只是你要知道沒返回值的函數(shù)一樣有意義
為吳川等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及吳川網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都網(wǎng)站制作、網(wǎng)站建設(shè)、吳川網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
遞歸函數(shù)myPower的定義有邏輯錯(cuò)誤,改成:
double myPower(int a,int b)
{
if(0==b) return 1;
return a*myPower(a,b-1);
}
如果改成這樣,會(huì)更高效:
double myPower(int a,int b)
{
if(0==b) return 1;
if(1==b) return a;
return myPower(a,b%2)*myPower(a*a,b/2);
}
例子1
#include stdio.h
double myPower(int a,int b)
{
if(0==b) return 1;
return a*myPower(a,b-1);
}
int main()
{
int a=2,b;
for(b=0;b11;b++)
printf("%lf\n",myPower(a,b));
return 0;
}
例子2
#include stdio.h
double myPower(int a,int b)
{
if(0==b) return 1;
if(1==b) return a;
return myPower(a,b%2)*myPower(a*a,b/2);
}
int main()
{
int a=3,b;
for(b=0;b11;b++)
printf("%lf\n",myPower(a,b));
return 0;
}
很正常啊,沒有返回值,就是不需要返回值。
比如:定義一個(gè)函數(shù),在函數(shù)中打印信息到屏幕上。
void?displayMessage(char?*msg)?{
#ifdef?NEED_DEBUG
printf("%s\n",?msg);
#endif
}
很顯然,調(diào)用這個(gè)函數(shù),我不需要知道信息是不是已經(jīng)打印到屏幕上了。(只有調(diào)試程序,才需要顯示信息)
有很多類似的場(chǎng)景,比如:某個(gè)程序,根據(jù)給定的參數(shù),在屏幕上繪制完成一個(gè)圖像,而調(diào)用者不關(guān)心圖像是不是繪得正確,因?yàn)檎_與否不影響程序的繼續(xù)執(zhí)行。
標(biāo)題名稱:c語(yǔ)言函數(shù)調(diào)用無(wú)返回值 c語(yǔ)言函數(shù)必須有返回值,否則不能使用函數(shù)
轉(zhuǎn)載源于:http://jinyejixie.com/article2/dosdsoc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、用戶體驗(yàn)、域名注冊(cè)、電子商務(wù)、自適應(yīng)網(wǎng)站、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)