Freigeben über


basic_streambuf::sgetn

Auszüge bis zu _Count Zeichen aus dem Eingabepuffer und speichert sie im bereitgestellten Puffer _Ptr.

Diese Methode ist möglicherweise unsicher, da sie für den Aufrufer basiert, um zu überprüfen, ob die übergebenen Werte korrekt sind.

streamsize sgetn(
   char_type *_Ptr,
   streamsize _Count
);

Parameter

  • _Ptr
    Der Puffer, in dem die extrahierten Zeichen zu enthalten.

  • _Count
    Die Anzahl von Elementen zum Lesen.

Rückgabewert

Die Anzahl der Elementlesens.Weitere Informationen finden Sie unter streamsize.

Hinweise

Die Memberfunktion gibt xsgetn zurück (_Ptr, _Count).

Beispiel

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

Eingabe: basic_streambuf_sgetn.txt

testing

93e7s4ye.collapse_all(de-de,VS.110).gifOutput

3 tes
ting

Anforderungen

Header: <streambuf>

Namespace: std

Siehe auch

Referenz

basic_streambuf Class

Programmierung der iostream-Headerdatei

iostreams Konventionen