函數(shù)返回值的意思是將函數(shù)實(shí)現(xiàn)的結(jié)果返回給調(diào)用者。

10多年的北票網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開(kāi)發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都全網(wǎng)營(yíng)銷(xiāo)推廣的優(yōu)勢(shì)是能夠根據(jù)用戶(hù)設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整北票建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)建站從事“北票網(wǎng)站設(shè)計(jì)”,“北票網(wǎng)站推廣”以來(lái),每個(gè)客戶(hù)項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
按標(biāo)準(zhǔn)來(lái)說(shuō),C的main函數(shù)是需要有返回值的。標(biāo)準(zhǔn)中main函數(shù)返回類(lèi)型是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í)可以有很多選項(xiàng)參數(shù),但main只有兩個(gè)參數(shù),所以第二個(gè)參數(shù)是數(shù)組,命令行的多個(gè)參數(shù)就可存在數(shù)組中了。
考慮到main函數(shù)的特殊性,lz不明白這個(gè)問(wèn)題可以理解。
main()是省略了返回值類(lèi)型,C語(yǔ)言會(huì)默認(rèn)認(rèn)為成main的類(lèi)型為int,在main()的函數(shù)體內(nèi)要返回一個(gè)值,如return 0;
而void main()的返回值是void類(lèi)型,也就是說(shuō)沒(méi)有返回值。這樣在main()的函數(shù)體內(nèi)你就不用寫(xiě)return 0;或者return 1;之類(lèi)的返回語(yǔ)句。
在一個(gè)程序中,可以說(shuō)你看不出兩者的差別,因?yàn)閙ain()是C語(yǔ)言的入口點(diǎn),入口點(diǎn)如果返回了程序也就結(jié)束了,因此C語(yǔ)言的這個(gè)特性似乎沒(méi)用。可沒(méi)用的話(huà),C語(yǔ)言的設(shè)計(jì)者為什么要這么做呢?!肯定有用。
沒(méi)錯(cuò),前面我說(shuō)的是在一個(gè)程序中,它似乎沒(méi)用。可如果一個(gè)程序prog2調(diào)用另一個(gè)程序prog1的話(huà)(這里指的是prog2直接調(diào)用prog1編譯好的可執(zhí)行文件),那么這個(gè)特性就有用了。因?yàn)閜rog2要知道prog1運(yùn)行之后的狀態(tài)。比如你用C寫(xiě)了一個(gè)刪除文件的程序(暫且命名為delf),然后用另一個(gè)程序去調(diào)用delf,那么調(diào)用結(jié)果怎么樣啊?這個(gè)文件是否刪掉了?這是int main()就會(huì)派上用場(chǎng)了。C語(yǔ)言中默認(rèn)的main如果返回為0,那么這個(gè)程序調(diào)用就成功了,其他值,則為不同的錯(cuò)誤代碼。在你的delf程序中,如果那個(gè)文件刪除成功,那么就在int main()中返回0,其他調(diào)用delf的程序就知道,噢,這個(gè)操作成功了。
在unix/linux系統(tǒng)中的很多命令都是通過(guò)這種方式獲得運(yùn)行結(jié)果的。
關(guān)于譚浩強(qiáng)的書(shū),我想不用多說(shuō),發(fā)行量說(shuō)明了一切。畢竟第二版在編寫(xiě)的時(shí)候還比較早,而第三版根據(jù)很多現(xiàn)在的需要進(jìn)行了改寫(xiě),內(nèi)容當(dāng)然會(huì)好些。鑒于lz是初學(xué)C,其實(shí)大可不必在這個(gè)問(wèn)題上浪費(fèi)太多時(shí)間,當(dāng)你有了更多的項(xiàng)目經(jīng)驗(yàn),對(duì)這個(gè)問(wèn)題會(huì)有更深刻的理解。
上面我已經(jīng)給出了main()、int main()和void main()的區(qū)別,但建議lz忽略這個(gè)差別,認(rèn)為成二者一樣,先把C的其他部分學(xué)好。至于只寫(xiě)成main(),我并不推薦,就算編譯器通過(guò)了,這種編程的風(fēng)格也太不嚴(yán)謹(jǐn),不利于好的習(xí)慣的養(yǎng)成。
C語(yǔ)言中main函數(shù)可以在任意位置。?
每一個(gè)C語(yǔ)言程序有且只有一個(gè)主函數(shù)(main()),且程序必須從main()函數(shù)開(kāi)始,它是程序開(kāi)始時(shí)調(diào)用的第一個(gè)函數(shù)。函數(shù)定義形式:【int main(void){}】。
C語(yǔ)言規(guī)定,在一個(gè)C程序中,main()函數(shù)可以在任意位置。
解析:
每個(gè)C程序有且只有一個(gè)主函數(shù)(main),且程序必須從main()函數(shù)開(kāi)始執(zhí)行,而且main()函數(shù)可以放在程序中的任意位置。
詳細(xì)介紹:
在宿主環(huán)境中編譯的C程序必須定義一個(gè)名為main的函數(shù),這是程序開(kāi)始時(shí)調(diào)用的第一個(gè)函數(shù)。
main()函數(shù)的定義有以下兩種形式:
(1)函數(shù)沒(méi)有參數(shù),返回值為int類(lèi)型。int main( void ) { /*…*/ }.
(2)函數(shù)有兩個(gè)參數(shù),類(lèi)型分別是int和char**,返回值是int類(lèi)型。int main( int argc, char *argv ) { /*…*/ }.
這兩種定義方式都符合C語(yǔ)言標(biāo)準(zhǔn)。除此之外,許多C的實(shí)現(xiàn)版本還支持第三種、非標(biāo)準(zhǔn)語(yǔ)法的定義方式:int main( int argc, char *argv, char *envp ) { /*…*/ }.
函數(shù)返回值是int,有3個(gè)參數(shù):第一個(gè)是int,另外兩個(gè)是char**。
main(),在c語(yǔ)言中稱(chēng)之為“主函數(shù)”,一個(gè)c程序有且僅有一個(gè)main函數(shù),任何一個(gè)c程序總是從main函數(shù)開(kāi)始執(zhí)行,main函數(shù)后面的一對(duì)圓括號(hào)不能省略。
具體形式如下:
main()
{ ? }
被大括號(hào){ }括起來(lái)的內(nèi)容稱(chēng)為main函數(shù)的函數(shù)體,這部分內(nèi)容就是計(jì)算機(jī)要執(zhí)行的內(nèi)容。
在{ ?}里面每一句話(huà)后面都有一個(gè)分號(hào)(;),在c語(yǔ)言中,我們把以一個(gè)分號(hào)結(jié)尾的一句話(huà)叫做一個(gè)c語(yǔ)言的語(yǔ)句,分號(hào)是語(yǔ)句結(jié)束的標(biāo)志。
擴(kuò)展資料:
函數(shù)是一組一起執(zhí)行一個(gè)任務(wù)的語(yǔ)句。每個(gè) C 程序都至少有一個(gè)函數(shù),即主函數(shù)?main()?,所有簡(jiǎn)單的程序都可以定義其他額外的函數(shù)。
您可以把代碼劃分到不同的函數(shù)中。如何劃分代碼到不同的函數(shù)中是由您來(lái)決定的,但在邏輯上,劃分通常是根據(jù)每個(gè)函數(shù)執(zhí)行一個(gè)特定的任務(wù)來(lái)進(jìn)行的。
函數(shù)聲明告訴編譯器函數(shù)的名稱(chēng)、返回類(lèi)型和參數(shù)。函數(shù)定義提供了函數(shù)的實(shí)際主體。
C 標(biāo)準(zhǔn)庫(kù)提供了大量的程序可以調(diào)用的內(nèi)置函數(shù)。例如,函數(shù)?strcat()?用來(lái)連接兩個(gè)字符串,函數(shù)?memcpy()?用來(lái)復(fù)制內(nèi)存到另一個(gè)位置。
函數(shù)還有很多叫法,比如方法、子例程或程序,等等。
參考資料來(lái)源:百度百科-C語(yǔ)言函數(shù)
網(wǎng)頁(yè)標(biāo)題:c語(yǔ)言程序main函數(shù),C++main函數(shù)
本文URL:http://chinadenli.net/article18/dsiodgp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、響應(yīng)式網(wǎng)站、企業(yè)網(wǎng)站制作、自適應(yīng)網(wǎng)站、建站公司、用戶(hù)體驗(yàn)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)