1樓:
理論上來說,只要是非void返回值型函式都必須加return。
雖然大多時候編譯器會幫你處理main()中忘記的return 0。
2樓:Linisdjxm
當main函式為ANSI標準規定的形式時。main函式任何時候都要加return(使用exit,quick_exit的情況除外,在這種情況下不需要return)。
當結果正常時返回0,不正常時返回非0
其他函式,
當為void func(...)時,不用加return函式(也可以使用return;提前退出)
當為其他形式時,必須加return(或exit,quick_exit)
3樓:gas town
return 0你是說main函式吧
所有函式(除了void型別)都必須加返回值至於main 標準定義必須是int並加返回值void main()是有些編譯器的私貨
4樓:夏之幻想
分為幾種情況:
函式不返回的情況下無須寫出return語句,例如無限迴圈、呼叫不返回的函式(exit, longjmp之類)等
函式返回,返回型別不是int的情況下,若返回型別是void則沒有寫出return的必要性,可在需要提前返回的情況下寫出return來返回,若返回型別是除int和void的其他情況下,使用對應型別的表示式返回
函式返回int的情況下,若函式是main函式時(也就是題主最可能問的一種情況),允許控制流直接通過執行過函式體直接離開,也即不寫出return語句來返回,返回值將隱式為0,若非main函式且需要返回的情況下,必須寫出return語句接返回的表示式,返回值即寫出的表示式,具體語義根據函式的編寫者定義,此時若控制流直接離開函式體則行為未定義(即錯誤)
5樓:在你回頭之前
蟹腰! c語言中的函式在建立時要定義型別吧。
那麼即可大致分為兩種型別的函式。
1:有返回值的(int,double,char等等)2:無返回值的(void)
先說第二種既然叫無返回值自然不用return任何東西這個很好理解。
那麼第一種則是題主要問到的問題了 ,return 0是指結束這個函式。那麼意思就是我寫入return 0的時候表明我這個函式功能已經結束了。 說明我已經有想要輸出的值了。。
這時候可以在函式內部寫return 0;但是如果我這個函式的功能是為了計算乙個值,並且我需要這個值來進行下一步運算的時候可以不用return 0; 可以return 這個函式的引數。以返回乙個值給這個函式來進行下一步的計算。
6樓:曾沿著雪路浪遊
主函式定義成void已經不符合標準了吧,其實return0只是返回0數字代表函式正確執行,現在主函式都要求定義成int所以原則上都要有return
7樓:百川灌河
其實簡單說的話,就是return 0;其實可以什麼時候都不用寫。
1、當函式是void型別是,沒有返回值,return都不用寫。
2、當函式是類似int型(多的不說)時,
(1)有時會返回乙個引數,這種情況你現在不用管。
(2)而返回0這種情況,只是說明你的函式跑完了,然後,就沒有然後了
(3)一般常用的還有就是返回-1,一般作為報錯用。這種情況先不說,
c語言return 0的作用是啥呢?
老闆吩咐你幹活,然後你幹完後,你要告訴老闆一下,這樣老闆才好給你安排下乙個任務。對於電腦來說,作業系統就是老闆,你寫的程式就是員工,執行完畢當然要向作業系統return 0匯報一下,然後作業系統決定接下來幹啥活。明白了嗎? 今晚月亮很美 因為有的時候呼叫這個C程式的批處理檔案也好Shell也好,需要...
Python語言什麼時候超過C語言?
湛翔 乙個是指令碼,乙個是接近底層的語言,兩個完全沒法比,主要應用領域也不同,在嵌入式領域Python的執行效率很多情況是無法接受的 貓科猿 語言只是工具,用合適的工具做對的事情.python 和 C 能互相替換交集很少,很多地方只能C才行.不過現在很多C的領域也開始用上了python,但還是要用C...
為什麼在C語言中靜態變數的初值是0?
gkmail 未初始化的靜態變數一般是分配在BSS段 程式載入時會對整個BSS段進行清 操作,因此這些靜態變數的初始值是 而臨時變數是分配在堆疊裡的,在進入函式時,並不會對函式使用的堆疊進行初始化操作,因此堆疊內的未初始化的臨時變數值是不確定的 zephyr z 對於變數 靜態和全域性只是作用域不同...