| 特性 | F5 (Start Debugging) | Ctrl+F5 (Start Without Debugging) |
|---|---|---|
| 調試器附加 | 是 | 否 |
| 斷點生效 | 是 | 否(忽略) |
| 單步執行 (F10/F11) | 支持 | 不支持 |
| 變量監視/即時窗口 | 支持 | 不支持 |
| 異常捕獲 | 第一時間中斷 | 僅顯示崩潰對話框 |
| 控制台暫停 | 否(需手動斷點或 system("pause")) | 是(自動提示「請按任意鍵繼續...」) |
| 性能開銷 | 較大(調試器監控) | 極小(接近發布版速度) |
❌ 「Ctrl+F5 不會生成調試信息」 — 錯誤。編譯選項
/Zi//Od決定是否生成 PDB,與運行方式無關。
❌ 「F5 運行慢是因為沒優化」 — 部分正確。Debug 配置默認/Od關閉優化,但可在 Release 配置下按 F5 獲得優化+調試。
✅ 最佳實踐:編寫代碼時 Ctrl+F5 快速跑通;遇到 Bug 切換到 F5 打斷點定位。
# Debug 版(含調試信息,無優化)
cl /Zi /Od /EHsc main.c /Femain_d.exe
# Release 版(優化,可選生成 PDB)
cl /O2 /EHsc main.c /Femain_r.exe
# 直接運行
main_r.exe
# 附加調試器運行(需安裝 Debugging Tools for Windows)
windbg -g -G main_r.exe