標準ライブラリからコードを使用して、ターボC ++で出力が終了しないようにする

StackOverflow https://stackoverflow.com/questions/19855000

質問

ここの人々の多くは私に使用をやめるように言っています clrscr(), getch() など、私は標準ライブラリでC ++を学習し始めましたが、標準ライブラリをたどりたいので、実行後にすぐに出力から出力を停止するにはどうすればよいですか?

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

    void main(){
        cout << "Hello World!" << endl;
        getch(); // Instead of using this
        }
役に立ちましたか?

解決 2

交換するだけです 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');
}

他のヒント

コマンドラインからバイナリを直接実行できます。その場合、プログラムの実行が終了した後、出力は引き続き端末にあり、あなたはそれを見ることができます。

それ以外の場合、実行が完了したらすぐに端子を閉じるIDEを使用している場合は、任意のブロッキング操作を使用できます。最も簡単なのは scanf (" %c", &dummy); また cin >> dummy; あるいは getchar (); そして、アドリアーノが提案したこと。 Enterキーを押す必要がありますが、これらはバッファリングされた入力操作であるためです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top