0

这里的许多人都告诉我停止使用clrscr()getch(),我已经开始使用标准库学习 C++,现在我想遵循标准库如何在运行后立即停止输出?

include <iostream.h>
include <conio.h> // Instead of using this

    void main(){
        cout << "Hello World!" << endl;
        getch(); // Instead of using this
        }
4

2 回答 2

2

您可以直接从命令行运行二进制文件。在这种情况下,程序完成执行后,输出仍将在终端中,您可以看到它。

否则,如果您使用的 IDE 会在执行完成后立即关闭终端,您可以使用任何阻塞操作。最简单的是scanf (" %c", &dummy);或者cin >> dummy;甚至getchar ();是阿德里亚诺所建议的。虽然您需要按 Enter 键,因为这些是缓冲输入操作。

于 2013-11-08T09:29:53.533 回答
1

getch()只需像这样替换cin.get()

include <iostream>

using namespace std;

void main()
{
    cout << "Hello World!" << endl;
    cin.get();
}

有关更多详细信息,请参阅get() 函数文档。仅供参考,您可以这样做,例如,等到用户按下特定字符:

void main()
{
    cout << "Hello World!" << endl;
    cout << "Press Q to quit." << endl;
    cin.ignore(numeric_limits<streamsize>::max(), 'Q');
}
于 2013-11-08T08:59:11.023 回答