Partager via


basic_streambuf::sgetn

Extrait jusqu'à _Count caractères du tampon d'entrée et les stocke dans la mémoire tampon fournie _Ptr.

Cette méthode est potentiellement non fiable, car elle repose sur l'appelant pour vérifier que les valeurs passées sont correctes.

streamsize sgetn(
   char_type *_Ptr,
   streamsize _Count
);

Paramètres

  • _Ptr
    La mémoire tampon destinée à contenir les caractères extraits.

  • _Count
    Nombre d'éléments à lire.

Valeur de retour

Nombre d'éléments lus. Pour plus d'informations, consultez streamsize.

Notes

La fonction membre retourne xsgetn (_Ptr, _Count).

Exemple

// basic_streambuf_sgetn.cpp
// compile with: /EHsc /W3
#include <iostream>
#include <fstream>

int main()
{
    using namespace std;

    ifstream myfile("basic_streambuf_sgetn.txt", ios::in);
    char a[10];

    // Extract 3 characters from myfile and store them in a.
    streamsize i = myfile.rdbuf()->sgetn(&a[0], 3);  // C4996
    a[i] = myfile.widen('\0');

    // Display the size and contents of the buffer passed to sgetn.
    cout << i << " " << a << endl;

    // Display the contents of the original input buffer.
    cout << myfile.rdbuf() << endl;
}

Entrée : basic_streambuf_sgetn.txt

testing

Sortie

3 tes
ting

Configuration requise

En-tête: <streambuf>

Espace de noms : std

Voir aussi

Référence

basic_streambuf, classe

iostream, programmation

iostreams, conventions