40

これは機能しません:

string temp;
cout << "Press Enter to Continue";
cin >> temp;
4

7 に答える 7

82
cout << "Press Enter to Continue";
cin.ignore();

または、より良い:

#include <limits>
cout << "Press Enter to Continue";
cin.ignore(std::numeric_limits<streamsize>::max(),'\n');
于 2009-05-24T06:36:06.873 に答える
9

試す:

char temp;
cin.get(temp);

または、さらに良い:

char temp = 'x';
while (temp != '\n')
    cin.get(temp);

文字列の入力は、改行だけでなく実際の文字を入力するまで待機すると思います。

于 2009-05-24T06:36:01.647 に答える
8

次のように置き換えますcin >> temp

temp = cin.get();

http://www.cplusplus.com/reference/iostream/istream/get/

cin >>EndOfFileを待ちます。デフォルトでは、cinにはskipwsフラグが設定されています。これは、空白が抽出されて文字列に挿入される前に、空白を「スキップ」することを意味します。

于 2009-05-24T06:38:38.740 に答える
2

試す:

cout << "Press Enter to Continue";
getchar(); 

int成功すると、読み取った文字が返され (値に昇格)、テスト ブロック (など)int getchar ( void );で使用できます。while

于 2015-05-19T23:02:45.230 に答える