return 的核心作用return 是 C/C++ 關鍵字,用於結束當前函數執行並返回調用處。若函數有返回值型別,return 後必須跟對應型別的表達式;若為 void 則只寫 return; 或省略。
main 的返回值規範int main(void) 或 int main(int argc, char *argv[])(C99/C++98 起強制 int 返回型別)。void main() 不符合標準,雖部分編譯器(如 VC6)兼容,但不可移植。0 代表程式正常結束,非零代表異常退出。C99 規定若 main 末尾無 return,編譯器隱式插入 return 0;(VC6 除外)。%ERRORLEVEL%、Shell $?),用於流程控制(&&, ||)。return 行為return 立即跳出函數,回到調用者的下一條語句繼續執行。void main() → 改用 int main(void) 並 return 0;。malloc、檔案操作)必須檢查返回值。main 中提前 return → 等同於 exit(),會跳過區域物件解構(C++),慎用。#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]) {
if (argc < 2) {
fprintf(stderr, "Usage: %s <filename>\n", argv[0]);
return 1; // 異常退出碼
}
FILE *fp = fopen(argv[1], "r");
if (!fp) {
perror("fopen");
return 2;
}
// ... 處理檔案 ...
fclose(fp);
return 0; // 正常結束
}
return 不只是「結束函數」,更是函數與調用者之間傳遞狀態與資料的橋樑。規範使用 int main() 並明確返回退出碼,是寫出健壯、可移植 C 程式的基石。