web-dev-qa-db-ja.com

cin.ignore(numeric_limits <streamsize> :: max()、 '\ n')

C++ではcin.ignore(numeric_limits<streamsize>::max(), '\n')はどういう意味ですか?

実際にユーザーからの最後の入力を無視しますか?

27
Zyi

この行は、現在の行の残りの_'\n'_またはEOFまでを無視します。

  • _'\n'_は区切り文字、つまりcinが無視されなくなる文字を設定します
  • numeric_limits<streamsize>::max()は、無視する最大文字数を設定します。これはストリームのサイズの上限であるため、無視する文字数に制限はないことをcinに効果的に伝えています。
19
dasblinkenlight

cin.ignore(numeric_limits <streamsize> :: max()、 '\ n');

ここで、_\n_は区切り文字として機能します...これは、コードを無視する必要があるポイントです(この特定のケースでは "\ n"として)。そしてmax()は、無視できる量に制限がないことを定義しています。スペース、タブは、行が終了するまで無視する必要があります。

0
Akash sharma