[問題] main function 後面要不要加 return 0?

看板C_and_CPP作者 (chmod)時間13年前 (2011/04/27 15:35), 編輯推噓3(3011)
留言14則, 8人參與, 最新討論串1/2 (看更多)
小弟程式生涯幾乎在 Linux 上面 有一個地方特別不懂 main 裡面最後常常會加上 return 0; 有人說加這個是通知作業系統這個程式沒有錯誤的情況下結束 但是我自己寫都沒在加 程式還是一樣能繼續跑 請問該不該加? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 221.120.64.23

04/27 15:36, , 1F
04/27 15:36, 1F
是寫 C++ 要加? 還是說不管 C 還是 C++ 都要加? ※ 編輯: chmod 來自: 221.120.64.23 (04/27 15:37)

04/27 15:38, , 2F
都要加
04/27 15:38, 2F

04/27 16:00, , 3F
C++ 可免, 參考 3.6.1/5
04/27 16:00, 3F

04/27 16:02, , 4F
不是通知作業系統,是如果你要做連續命令才有用到
04/27 16:02, 4F

04/27 16:03, , 5F
if (system("你的程式.exe") == 0) puts("執行成功");
04/27 16:03, 5F

04/27 16:08, , 6F
C99 5.1.2.2.3 似乎也說: 不寫會回傳 0
04/27 16:08, 6F

04/27 16:10, , 7F
<囧>
04/27 16:10, 7F

04/27 16:12, , 8F
XD
04/27 16:12, 8F

04/27 16:26, , 9F
c99 以前似乎沒這規定 gcc 沒加 -std=c99 會回傳垃圾
04/27 16:26, 9F

04/27 16:26, , 10F
實驗完推完文才發現已經有回文了XD
04/27 16:26, 10F

04/27 19:37, , 11F
就是通知OS 該程式載入記憶體並已正常執行完成
04/27 19:37, 11F

04/27 21:43, , 12F
加上是好習慣XD
04/27 21:43, 12F

04/27 22:10, , 13F
如果都在linux下的話 應該不會不知道&&在SHELL的意義吧?
04/27 22:10, 13F

04/27 22:46, , 14F
古早要,新標準說沒寫就預設 0
04/27 22:46, 14F
文章代碼(AID): #1DjyTUTv (C_and_CPP)
文章代碼(AID): #1DjyTUTv (C_and_CPP)