検索

ホームページ  >  に質問  >  本文

c++ - if(! cin ) 是什么意思 有什么作用

if(! cin ) 是什么意思,有什么作用,应该怎么用

大家讲道理大家讲道理2807日前728

全員に返信(2)返信します

  • 伊谢尔伦

    伊谢尔伦2017-04-17 14:59:46

    std::basic_ios 内の operator bool を定義します:

    リーリー

    そのため、標準 IO ストリームを if (!cin) の形で bool で判定すると、operator bool が呼び出され、返された結果が if の判定条件として使用されます。
    そのため、cin 入力ストリームでエラーが発生すると、if (!cin) の条件が true と判断されます。このとき、cin.clear() を呼び出してストリームの状態をリセットし、cin.ignore() を呼び出すことができます。 > を呼び出して入力バッファをクリアし、最後の入力が次の入力に与える影響を排除できます。

    リーリー

    通常、最初のパラメータは 2 番目のパラメータ 'n' のみが実際に有効になるように十分な大きさに設定され、キャリッジ リターンの前の入力文字を入力バッファ ストリームから消去できます。次に、次の入力を読み取ってみます。

    リーリー

    返事
    0
  • 怪我咯

    怪我咯2017-04-17 14:59:46

    cin は入力ストリームであり、!cin は入力ストリームが正常かどうかを判断します。

    返事
    0
  • キャンセル返事