函數(shù)的值(或稱函數(shù)返回值)是指函數(shù)被調(diào)用之后,執(zhí)行函數(shù)體中的程序段所取得的值,可以通過(guò)return語(yǔ)句返回。
作為一家“創(chuàng)意+整合+營(yíng)銷”的成都網(wǎng)站建設(shè)機(jī)構(gòu),我們?cè)跇I(yè)內(nèi)良好的客戶口碑。創(chuàng)新互聯(lián)建站提供從前期的網(wǎng)站品牌分析策劃、網(wǎng)站設(shè)計(jì)、成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、創(chuàng)意表現(xiàn)、網(wǎng)頁(yè)制作、系統(tǒng)開(kāi)發(fā)以及后續(xù)網(wǎng)站營(yíng)銷運(yùn)營(yíng)等一系列服務(wù),幫助企業(yè)打造創(chuàng)新的互聯(lián)網(wǎng)品牌經(jīng)營(yíng)模式與有效的網(wǎng)絡(luò)營(yíng)銷方法,創(chuàng)造更大的價(jià)值。
return語(yǔ)句的一般形式為:
return 表達(dá)式;
或者:
return (表達(dá)式);
例如:
return max;
return a+b;
return (100+200);
函數(shù)中可以有多個(gè) return 語(yǔ)句,但每次調(diào)用只能有一個(gè)return 語(yǔ)句被執(zhí)行,所以只有一個(gè)返回值。
一旦遇到 return 語(yǔ)句,不管后面有沒(méi)有代碼,函數(shù)立即運(yùn)行結(jié)束,將值返回。例如:
int func(){
int a=100, b=200, c;
return a+b;
return a*b;
return b/a;
}
返回值始終 a+b 的值,也就是300。
沒(méi)有返回值的函數(shù)為空類型,用void進(jìn)行說(shuō)明。例如:
void func(){
printf("Hello world!\n");
}
一旦函數(shù)的返回值類型被定義為 void,就不能再接收它的值了。例如,下面的語(yǔ)句是錯(cuò)誤的:
int a = func();
為了使程序有良好的可讀性并減少出錯(cuò), 凡不要求返回值的函數(shù)都應(yīng)定義為空類型。
①為什么需要return?
為了回答這個(gè)問(wèn)題,
我打算用 模塊思維 來(lái)解釋。
②定義模塊(形參模塊)
定義函數(shù):f(s)(a,b)
滿足公式:s=a+b
函數(shù)名:f(s)
形參: a,b(公式中的 變量 )
函數(shù)返回值:return s
③調(diào)用模塊(實(shí)參模塊)
主函數(shù):main()表示用戶自己編寫(xiě)的部分
調(diào)用函數(shù):f(s)(1,2)
滿足公式:x=f(s)(1,2)
函數(shù)名:f(s)和定義函數(shù)一致,產(chǎn)生調(diào)用
實(shí)參 :1,2( 賦值 給公式的值)
求值:printf("%d\n",x),求x的值?
④值的傳遞過(guò)程
調(diào)用模塊 中調(diào)用函數(shù)x=f(s)(1,2)
將實(shí)參1和2的值賦值給
定義模塊 中的形參a和b
(實(shí)參到形參是單向傳遞,不可逆)
定義模塊計(jì)算出s=a+b=1+2=3
定義模塊 中的return s
將s的值賦值給
調(diào)用模塊 中的函數(shù)f(s)(1,2)
即x=f(s)(1,2)=s=3
~
return s的作用
就是將定義模塊中的s
賦值 給調(diào)用模塊中的調(diào)用函數(shù)
如果沒(méi)有return s
調(diào)用模塊中的調(diào)用函數(shù)將永遠(yuǎn)沒(méi)有定值
即所求x 無(wú)定值
這一點(diǎn)和數(shù)學(xué)不一樣,
數(shù)學(xué)中
同一函數(shù)名的值是 通用 的,
C語(yǔ)言中
定義函數(shù)和調(diào)用函數(shù)的值是 隔離 的,
盡管函數(shù)名一樣
如果不賦值,調(diào)用函數(shù)永遠(yuǎn)無(wú)定值。
return后接一個(gè)值。\r\n在調(diào)用這個(gè)函數(shù)的函數(shù)里面,調(diào)用它的時(shí)候希望獲得一個(gè)值,如果不希望獲得這個(gè)值的時(shí)候,用void聲明就好。如果需要,比如說(shuō)需要得到一個(gè)整形值\r\n就聲明\r\nint func()\r\n在調(diào)用它的比如main里面\r\nfunc()的作用就可以相當(dāng)于一個(gè)int型常數(shù)\r\n比如外面定義了\r\nint max(int a,int b)\r\n{\r\nreturn ab?a:b;\r\n}\r\n主函數(shù)里面是\r\nmain()\r\n{\r\nint A;\r\nA=max(1,2);\r\n}\r\n這時(shí)候就是通過(guò)max計(jì)算 12 則return 一個(gè)1 ,1
回答于?2022-11-16
函數(shù)返回值的意思是將函數(shù)實(shí)現(xiàn)的結(jié)果返回給調(diào)用者。
按標(biāo)準(zhǔn)來(lái)說(shuō),C的main函數(shù)是需要有返回值的。標(biāo)準(zhǔn)中main函數(shù)返回類型是int的,所以需要一個(gè)返回值。但是由于歷史原因,很多地方可以看到?jīng)]有返回值的main。
比如直接main()或者說(shuō)void main() 但是這樣一般編譯器也不會(huì)認(rèn)為錯(cuò)誤,不過(guò)建議還是寫(xiě)標(biāo)準(zhǔn)的C的main函數(shù),最好有一個(gè)返回值,0表示正常退出。
擴(kuò)展資料:
需要說(shuō)明的是:
1、一個(gè)C語(yǔ)言源程序可以由一個(gè)或多個(gè)源文件組成。
2、每個(gè)源文件可由一個(gè)或多個(gè)函數(shù)組成。
3、一個(gè)源程序不論由多少個(gè)文件組成,都有一個(gè)且只能有一個(gè)main函數(shù),即主函數(shù)。是整個(gè)程序的入口。
4、源程序中可以有預(yù)處理命令(包括include 命令,ifdef、ifndef命令、define命令),預(yù)處理命令通常應(yīng)放在源文件或源程序的最前面。
5、每一個(gè)說(shuō)明,每一個(gè)語(yǔ)句都必須以分號(hào)結(jié)尾。但預(yù)處理命令,函數(shù)頭和花括號(hào)“}”之后不能加分號(hào)。(結(jié)構(gòu)體、聯(lián)合體、枚舉型的聲明的“}”后要加“ ;”。)
6、標(biāo)識(shí)符,關(guān)鍵字之間必須至少加一個(gè)空格以示間隔。若已有明顯的間隔符,也可不再加空格來(lái)間隔。
參考資料來(lái)源:百度百科-函數(shù)
返回值的意思是將函數(shù)實(shí)現(xiàn)的結(jié)果返回給調(diào)用者。
按標(biāo)準(zhǔn)來(lái)說(shuō),C的main函數(shù)是需要有返回值的。標(biāo)準(zhǔn)中main函數(shù)返回類型是int的,所以需要一個(gè)返回值。但是由于歷史原因,很多地方可以看到?jīng)]有返回值的main。
比如直接main()或者說(shuō)void main() 但是這樣一般編譯器也不會(huì)認(rèn)為錯(cuò)誤,不過(guò)建議還是寫(xiě)標(biāo)準(zhǔn)的C的main函數(shù),最好有一個(gè)返回值,0表示正常退出。
擴(kuò)展資料:
常用庫(kù)函數(shù)有:
scanf格式輸入函數(shù)
printf格式輸出函數(shù)
systemdos命令函數(shù)
sort排序
main主函數(shù)
fgets文件讀取字符串函數(shù)
fputs文件寫(xiě)入字符串函數(shù)
函數(shù)的返回值通過(guò)return語(yǔ)句來(lái)執(zhí)行,即return后的變量或表達(dá)式的值,就為該函數(shù)的返回值(你可以根據(jù)需要自定義返回什么值),而返回值的類型是指該值你想要得到的類型,比如return
a;(a的類型,你在函數(shù)體里定義的是int
a;但根據(jù)需要,你要的是一個(gè)float型的返回值),于是,這樣定義一個(gè)函數(shù):
float
函數(shù)名(參數(shù)列表)
{
int
a;
函數(shù)體;
……
return
a;
}
這樣,返回值a就變成了float型。
文章題目:c語(yǔ)言函數(shù)接受返回值 c語(yǔ)言函數(shù)返回值有什么用
文章源于:http://vcdvsql.cn/article40/dooosho.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計(jì)、面包屑導(dǎo)航、響應(yīng)式網(wǎng)站、微信小程序、網(wǎng)站導(dǎo)航、網(wǎng)站設(shè)計(jì)
聲明:本網(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)