Freigeben über


codecvt::length

Bestimmt, wievieles Bytes aus einer angegebenen Sequenz externen Erzeugnisses Bytes nicht mehr als eine angegebene Anzahl interner CharTypes und gibt die Anzahl von Byte- Blöcke.

int length(
    const StateType& _State,
    const Byte* _First1, 
    const Byte* _Last1,
    size_t _Len2
) const;

Parameter

  • _State
    Der Konvertierungszustand, zwischen Aufrufen zur Memberfunktion beibehalten wird.

  • _First1
    Zeiger zum Anfang der externen Sequenz.

  • _Last1
    Zeiger zum Ende der externen Sequenz.

  • _Len2
    Die maximale Anzahl von Bytes, die durch die Memberfunktion zurückgegeben werden können.

Rückgabewert

Eine ganze Zahl, die die Anzahl die maximale Anzahl von Konvertierungen darstellt, nicht größer als _Len2, definiert durch die externen Quellsequenz an [_First1, _Last1).

Hinweise

Die Memberfunktion gibt do_length zurück (_State, _First1, _Last1, _Len2).

Beispiel

// codecvt_length.cpp
// compile with: /EHsc
#define _INTL
#include <locale>
#include <iostream>
using namespace std;
#define LEN 90
int main( )   
{
   char* pszExt = "This is the string whose length is to be measured!";
   mbstate_t state = {0};
   locale loc("C");//English_Britain");//German_Germany
   int res = use_facet<codecvt<wchar_t, char, mbstate_t> >
     ( loc ).length( state,
          pszExt, &pszExt[strlen(pszExt)], LEN );
   cout << "The length of the string is: ";
   wcout << res;
   cout << "." << endl;
   exit(-1);
}
  

Anforderungen

Gebietsschema Header: <>

Namespace: std

Siehe auch

Referenz

codecvt-Klasse