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