Partager via


operator>> (<bitset>)

Lit une chaîne de caractères de bits dans un bitset.

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

Paramètres

  • _Istr
    La chaîne qui est écrite dans le flux d'entrée à insérer dans le bitset.

  • _Right
    Le bitset qui accepte les bits du flux d'entrée.

Valeur de retour

La fonction de modèle retourne la chaîne _Istr.

Notes

La fonction de modèle surcharge operator>> pour stocker dans le _Right de bitset le bitset de valeur (str), où str est un objet de type basic_string<CharType, Traits, allocator<CharType> >& extrait d' _Istr.

La fonction de modèle extrait des éléments d' _Istr et les insère dans le bitset jusqu'à ce que :

  • Tous les éléments de bits ont été récupérés du flux d'entrée et stockés dans le bitset.

  • Le bitset est rempli avec les bits du flux d'entrée.

  • Il se produit un élément d'entrée qui n'est ni 0 ou 1.

Exemple

#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;
}

Entrée

10110
1011
10k10

Configuration requise

en-tête : <bitset>

l'espace de noms : DST