int main() {
// ... 工作 ...
return 0; // 向作業系統回傳退出碼
}
最常見、最標準的結束方式。
if (ptr == NULL) {
fprintf(stderr, "Allocation failed\n");
exit(1); // 非零表示異常終止,立即結束整個進程
}
常用於錯誤處理、資源檢查失敗時快速退出。atexit() 可註冊清理函式。
kill <PID> (預設送 SIGTERM,可被捕捉/忽略)kill -9 <PID> (SIGKILL,不可捕捉,核心強制回收)kill(pid, SIGKILL) (需 root 權限或同使用者)開發者無法主動觸發此路徑,應透過防禦性程式設計 (邊界檢查、智慧指標、RAII) 預防。
優雅終止原則:優先用
return或exit(),確保資源釋放 (檔案關閉、記憶體釋放、鎖釋放)。kill -9為最後手段,可能導致資料損壞。