Condividi tramite


operator>> (<bitset>)

Legge una stringa di caratteri di bit in un bitset.

template<class CharType, class Traits, size_t Bits>
   basic_istream<CharType, Traits>& operator>> (
      basic_istream<CharType, Traits>& _Istr,
      bitset<N>& _Right
   );

Parametri

  • _Istr
    La stringa immessa nel flusso di input da inserire nel bitset.

  • _Right
    Il bitset che riceve i bit nel flusso di input.

Valore restituito

La funzione di modello restituisce la stringa _Istr.

Note

La funzione di modello esegue l'overload operator>> per memorizzare in _Right di bitset il bitset di valore (str), dove str è un oggetto di tipo basic_string<char, Traits, allocator<char> >& tratto da _Istr.

La funzione di modello estrae gli elementi da _Istr e li inserisce in bitset fino a:

  • Tutti gli elementi di bit sono stati estratti dal flusso di input e sono stati archiviati nel bitset.

  • Il bitset viene riempito con i bit nel flusso di input.

  • Un elemento di input viene rilevato che non è 0 e 1.

Esempio

#include <bitset>
#include <iostream>
#include <string>

using namespace std;
int main()
{

   bitset<5> b1;
   cout << "Enter string of (0 or 1) bits for input into bitset<5>.\n"
        << "Try bit string of length less than or equal to 5,\n"
        << " (for example: 10110): ";
   cin >>  b1;

   cout << "The ordered set of bits entered from the "
        << "keyboard\n has been input into bitset<5> b1 as: ( "
        << b1 << " )" << endl;

   // Truncation due to longer string of bits than length of bitset
   bitset<2> b3;
   cout << "Enter string of bits (0 or 1) for input into bitset<2>.\n"
        << " Try bit string of length greater than 2,\n"
        << " (for example: 1011): ";
   cin >>  b3;

   cout << "The ordered set of bits entered from the "
        << "keyboard\n has been input into bitset<2> b3 as: ( "
        << b3 << " )" << endl;

   // Flushing the input stream
   char buf[100];
   cin.getline(&buf[0], 99);

   // Truncation with non-bit value
   bitset<5> b2;
   cout << "Enter a string for input into  bitset<5>.\n"
        << " that contains a character than is NOT a 0 or a 1,\n "
        << " (for example: 10k01): ";
   cin >>  b2;

   cout << "The string entered from the keyboard\n"
        << " has been input into bitset<5> b2 as: ( "
        << b2 << " )" << endl;
}

Input

10110
1011
10k10

Requisiti

intestazione: <bitset>

Spazio dei nomi: deviazione standard