basic_streambuf::sgetn
Les extraits jusqu'à des caractères d' _Count de la mémoire tampon d'entrée et les stocke dans la mémoire tampon fournie _Ptr.
Cette méthode est potentiellement dangereuse, car elle repose sur l'appelant de vérifier que les valeurs passées sont correctes.
streamsize sgetn(
char_type *_Ptr,
streamsize _Count
);
Paramètres
_Ptr
La mémoire tampon pour contenir les caractères récupérés._Count
Nombre d'éléments à lire.
Valeur de retour
Le nombre d'éléments lus.Consultez streamsize pour plus d'informations.
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>
l'espace de noms : DST