新聞中心
C語言中,main函數(shù)需要返回值嗎?
函數(shù)返回值的意思是將函數(shù)實現(xiàn)的結(jié)果返回給調(diào)用者。
10余年的科爾沁左翼網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。全網(wǎng)整合營銷推廣的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整科爾沁左翼建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)建站從事“科爾沁左翼網(wǎng)站設(shè)計”,“科爾沁左翼網(wǎng)站推廣”以來,每個客戶項目都認(rèn)真落實執(zhí)行。
按標(biāo)準(zhǔn)來說,C的main函數(shù)是需要有返回值的。標(biāo)準(zhǔn)中main函數(shù)返回類型是int的,所以需要一個返回值。但是由于歷史原因,很多地方可以看到?jīng)]有返回值的main。
比如直接main()或者說void main() 但是這樣一般編譯器也不會認(rèn)為錯誤,不過建議還是寫標(biāo)準(zhǔn)的C的main函數(shù),最好有一個返回值,0表示正常退出。
擴(kuò)展資料:
需要說明的是:
1、一個C語言源程序可以由一個或多個源文件組成。
2、每個源文件可由一個或多個函數(shù)組成。
3、一個源程序不論由多少個文件組成,都有一個且只能有一個main函數(shù),即主函數(shù)。是整個程序的入口。
4、源程序中可以有預(yù)處理命令(包括include 命令,ifdef、ifndef命令、define命令),預(yù)處理命令通常應(yīng)放在源文件或源程序的最前面。
5、每一個說明,每一個語句都必須以分號結(jié)尾。但預(yù)處理命令,函數(shù)頭和花括號“}”之后不能加分號。(結(jié)構(gòu)體、聯(lián)合體、枚舉型的聲明的“}”后要加“ ;”。)
6、標(biāo)識符,關(guān)鍵字之間必須至少加一個空格以示間隔。若已有明顯的間隔符,也可不再加空格來間隔。
參考資料來源:百度百科-函數(shù)
C語言中main()函數(shù)是否返回值?
考慮到main函數(shù)的特殊性,lz不明白這個問題可以理解。
main()是省略了返回值類型,C語言會默認(rèn)認(rèn)為成main的類型為int,在main()的函數(shù)體內(nèi)要返回一個值,如return 0;
而void main()的返回值是void類型,也就是說沒有返回值。這樣在main()的函數(shù)體內(nèi)你就不用寫return 0;或者return 1;之類的返回語句。
在一個程序中,可以說你看不出兩者的差別,因為main()是C語言的入口點(diǎn),入口點(diǎn)如果返回了程序也就結(jié)束了,因此C語言的這個特性似乎沒用??蓻]用的話,C語言的設(shè)計者為什么要這么做呢?!肯定有用。
沒錯,前面我說的是在一個程序中,它似乎沒用??扇绻粋€程序prog2調(diào)用另一個程序prog1的話(這里指的是prog2直接調(diào)用prog1編譯好的可執(zhí)行文件),那么這個特性就有用了。因為prog2要知道prog1運(yùn)行之后的狀態(tài)。比如你用C寫了一個刪除文件的程序(暫且命名為delf),然后用另一個程序去調(diào)用delf,那么調(diào)用結(jié)果怎么樣???這個文件是否刪掉了?這是int main()就會派上用場了。C語言中默認(rèn)的main如果返回為0,那么這個程序調(diào)用就成功了,其他值,則為不同的錯誤代碼。在你的delf程序中,如果那個文件刪除成功,那么就在int main()中返回0,其他調(diào)用delf的程序就知道,噢,這個操作成功了。
在unix/linux系統(tǒng)中的很多命令都是通過這種方式獲得運(yùn)行結(jié)果的。
關(guān)于譚浩強(qiáng)的書,我想不用多說,發(fā)行量說明了一切。畢竟第二版在編寫的時候還比較早,而第三版根據(jù)很多現(xiàn)在的需要進(jìn)行了改寫,內(nèi)容當(dāng)然會好些。鑒于lz是初學(xué)C,其實大可不必在這個問題上浪費(fèi)太多時間,當(dāng)你有了更多的項目經(jīng)驗,對這個問題會有更深刻的理解。
上面我已經(jīng)給出了main()、int main()和void main()的區(qū)別,但建議lz忽略這個差別,認(rèn)為成二者一樣,先把C的其他部分學(xué)好。至于只寫成main(),我并不推薦,就算編譯器通過了,這種編程的風(fēng)格也太不嚴(yán)謹(jǐn),不利于好的習(xí)慣的養(yǎng)成。
c語言中,函數(shù)返回值怎么用?
return后接一個值。
在調(diào)用這個函數(shù)的函數(shù)里面,調(diào)用它的時候希望獲得一個值,如果不希望獲得這個值的時候,用void聲明就好。如果需要,比如說需要得到一個整形值
就聲明
int func()
在調(diào)用它的比如main里面
func()的作用就可以相當(dāng)于一個int型常數(shù)
比如外面定義了
int max(int a,int b)
{
return ab?a:b;
}
主函數(shù)里面是
main()
{
int A;
A=max(1,2);
}
這時候就是通過max計算 12 則return 一個1 ,12 則return一個2。很明顯12 所以這里max(1,2)就會return 一個 2
這時候主函數(shù)里的max(1,2)就相當(dāng)于一個常數(shù) 2
A=max(1,2)的作用就相當(dāng)于A=2
這個意思。
C語言中主函數(shù)是否有返回值,如果有,最多有幾個?
c語言中,
只要是函數(shù),返回值只能有一個,要想使用這個函數(shù)同時改變多個數(shù)值,可以使用指針。主函數(shù)也不例外,c語言中主函數(shù)一般是void類型,即無返回值,如果你是軟件專業(yè),后續(xù)學(xué)習(xí)的c++將介紹有返回值的main主函數(shù),我也是軟件專業(yè),有問題可以一起討論,祝你學(xué)習(xí)順利。
網(wǎng)站欄目:c語言中主函數(shù)有無返回值 c語言中主函數(shù)的作用
網(wǎng)頁路徑:http://ef60e0e.cn/article/doeddhi.html