1. 程式人生 > >關於vs2010執行C程式時,執行結果視窗一閃而過的問題

關於vs2010執行C程式時,執行結果視窗一閃而過的問題

用VC++6.0和VS中的C++程式設計,今天正常安裝好後,編寫一個正確的程式,可執行的時候,DOS視窗一晃而過,也算是正常編譯了,但我不懂的是它為什麼消失得這麼快?
會出現dos介面是因為你程式中可能用到了需要用dos顯示結果(或者輸入之類的)的函式,比如printf()函式,馬上消失是因為你執行程式是一步到位的,dos介面做完你需要它做的事情之後就被銷燬了,如果你想看清楚整個過程,可以設定斷點,單步執行下,看看程式的執行過程
在谷歌和百度上查了,有這些解答:
1)你執行的應該是控制檯應用程式,需要在main程式碼最後return 0之前新增一個暫停函式,該函式作用為從標準輸入獲取字元然後程式才會繼續執行,比較典型的為c程式中可以用getchar() ,getchar()包含在標頭檔案stdio.h中。也可以呼叫system("pause"); ,這是一個windows的cmd命令暫停,在控制檯程式中體現為獲得任意鍵盤訊息後程序繼續,被包含在c庫stdlib.h中。

2)其實還有一個更好的解決辦法:在你的專案條目(project)上右擊滑鼠,在彈出選單上選擇最後一項“property/屬性”,在左邊的一欄裡找到“配置屬性->連結器->系統”,點選“系統”項後,在右邊的欄的“子系統(subSystem)”將刻項的值配置為"Console(/SUBSYSTEM:CONSOLE)"。
經過這樣的配置後,再按 Ctrl+F5,程式執行完畢後就會停留在控制檯介面,提示你“按任意鍵繼續”。 到此,問題完美解決。

3)還可以通過設定斷點,逐步除錯看執行結果。

4)改執行方式
新開cmd.exe視窗:
C:\> D: //切換碟符
D:\> cd mypath // 切換目錄
D:\mypath>my.exe //執行程式: