在C#中,您可以使控制檯等待輸入字符(這對於在程序退出前能夠看到控制檯的最後輸出很有用)。作爲C++的初學者,我不確定什麼是等價的。有一個嗎?控制檯在C++中暫停?
20
A
回答
3
標準中沒有什麼東西,也沒有什麼跨平臺的。通常的方法是等待< Enter>被按下,然後放棄結果。
29
最簡單的方法就是:
std::cin.get();
可以打印類似「按任意鍵繼續......」在那之前。有人會告訴你關於
system("pause");
但是不要使用它。它不是便攜式的。
5
#include <stdio.h>
// ...
getchar();
該函數等待一個按鍵並返回其整數值。
例如,我有不一樣System("pause")
的函數,但它不要求「pause.exe」(這是一個潛在的安全整體,順便說一句):
void pause()
{
std::cout << std::endl << "Press any key to continue...";
getchar();
}
0
不正確的解決方案將是使用system("pause")
,因爲這會造成安全漏洞(目錄中的惡意pause.exe!)並且不是跨平臺的(暫停只存在於Windows/DOS上)。
有一個簡單的解決方案:
void myPause() {
printf("Press any key to continue . . .");
getchar();
}
這使用getchar()
,這是符合POSIX標準(見this)。 您可以使用此功能是這樣的:
int main() {
...
myPause();
}
這有效地防止控制檯從閃動,然後退出。
相關問題
- 1. 組裝控制檯暫停
- 2. 暫停Python控制檯
- 3. 在簡單控制檯中暫停命令C#app
- 4. AWS控制檯,暫停評估
- 5. 自動暫停c#中的控制檯應用程序
- 6. 沒有暫停控制檯的C++延遲For-Loop
- 7. 如何在F#語言中暫停控制檯
- 8. 如何在控制檯中播放和暫停Youtube視頻?
- 9. 暫停在控制檯2內運行的bash中的進程
- 10. 製作C++暫停
- 11. 在MVC控制器動作中暫停
- 12. 如何停止控制檯暫停我的線程和任務?
- 13. 如何暫停.pl和.bat文件中的控制檯窗口?
- 14. 如何暫停Windows控制檯程序正在調試
- 15. 暫時暫停System.Timers.Timer在C#
- 16. NSURLSessionDataTask在後臺暫停嗎?
- 17. Node.js在沒有暫停的情況下在新的控制檯中打開
- 18. 在C#中暫停執行
- 19. 從控制檯讀取而不暫停程序
- 20. 爲什麼我需要2個Console.ReadLine();暫停控制檯?
- 21. 如何暫停Eclipse的博世XDK110控制檯窗口
- 22. 我可以在SOAPUI groovy腳本中暫停控制檯輸入嗎?
- 23. 如果發生錯誤,請在Windows控制檯中暫停GNU Make
- 24. 暫時停止一個控制流程
- 25. D3補間 - 暫停和恢復控制
- 26. 暫停GoogleMap SupportMapFragment /阻止它被控制
- 27. 引導程序播放/暫停控制
- 28. wi fi協議,流量控制暫停
- 29. 暫停後臺線程()
- 30. 控制檯窗口不會留在屏幕上,儘管「cin.get();」或系統(「暫停」)
Windows還是Linux? – 2010-12-03 08:44:08
Duplicate:http://stackoverflow.com/questions/1173208/what-is-the-best-practice-for-combating-the-console-closing-issue – 2010-12-03 08:47:04
@Stefan:windows。 – RCIX 2010-12-03 08:47:55