codecvt::length
Détermine combien d' Octets depuis une séquence donné d' Octets externes ne produit pas plus qu'un nombre spécifié de CharTypes internes et retourne ce nombre d' Octets.
int length(
const StateType& _State,
const Byte* _First1,
const Byte* _Last1,
size_t _Len2
) const;
Paramètres
_State
L'état de conversion qui est conservé entre les appels à la méthode._First1
Pointeur vers le début de la séquence externe._Last1
Pointeur vers la fin de la séquence externe._Len2
Le nombre maximal d'octets qui peuvent être retournés par la méthode.
Valeur de retour
Un entier qui représente le nombre maximal de conversions, non supérieurs à _Len2, définis par la séquence de source externe à [_First1, _Last1).
Notes
La fonction retourne do_length(_State, _First1, _Last1, _Len2).
Exemple
// 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);
}
Configuration requise
En-tête : <paramètres régionaux>
Espace de noms : std