雙擊執行 .exe 檔案,控制台視窗瞬間彈出又關閉,無法看到輸出結果。
原因:程式執行結束,進程終止,作業系統自動關閉控制台視窗。IDE 中運行通常會自動暫停,但直接執行不會。
#include
int main() {
// 你的代碼...
printf("Hello World!\n");
printf("按 Enter 鍵退出...");
while (getchar() != '\n'); // 清空輸入緩衝區
getchar(); // 等待用戶按鍵
return 0;
}
#include
system("pause"); // 需 stdlib.h,僅 Windows 有效
主控台 (/SUBSYSTEM:CONSOLE)cmd 中輸入:
myprogram.exe
// 視窗不會關閉,可直接看輸出
在 scanf 後直接用 getchar() 會讀取殘留的換行符,導致無暫停效果。必須先清空緩衝區:
int c;
while ((c = getchar()) != '\n' && c != EOF); // 清空緩衝區
getchar(); // 真正等待