Compartir a través de


ctype::narrow

Convierte los caracteres de CharType tipo utilizado por una configuración regional a los caracteres correspondientes de char escrito en el juego de caracteres nativo.

char narrow(
    CharType ch, 
    char default = '\0'
) const;
const CharType* narrow(
    const CharType* first, 
    const CharType* last,
    char default, 
    char* dest
) const;

Parámetros

  • ch
    El carácter de Chartype tipo utilizado por la configuración regional que se va a convertir.

  • default
    El valor predeterminado asignarlos por la función miembro a caracteres de CharType cuyas referencias no tienen caracteres de equivalente de charescrito.

  • first
    Un puntero al primer carácter del intervalo de caracteres que se convertirán.

  • last
    Un puntero al carácter inmediatamente después del último carácter del rango de caracteres que se convertirán.

  • dest
    Un puntero const al primer carácter de char escrito en el intervalo de destino que almacena el intervalo convertido de caracteres.

Valor devuelto

La primera función miembro devuelve el carácter nativo de char tipo correspondiente al carácter del parámetro de tipo equivalente de CharTypedefault si no está definido.

La segunda función miembro devuelve un puntero al rango de destino de caracteres nativos convierten de caracteres de CharTypeescrito.

Comentarios

La primera función miembro devuelve do_narrow(ch, default).La segunda función miembro devuelve do_narrow (first, last, default, dest).Únicamente caracteres básicos de origen se garantiza para tener una imagen inversa única CharType en narrow.Por estos caracteres básicos de origen, el invariable siguiente contiene: c == de narrow ( se amplía (c), 0).

Ejemplo

// ctype_narrow.cpp
// compile with: /EHsc /W3
#include <locale>
#include <iostream>
using namespace std;

int main( )
{
   locale loc1 ( "english" );
   wchar_t *str1 = L"\x0392fhello everyone";
   char str2 [16];
   bool result1 = (use_facet<ctype<wchar_t> > ( loc1 ).narrow
      ( str1, str1 + wcslen(str1), 'X', &str2[0] ) != 0);  // C4996
   str2[wcslen(str1)] = '\0';
   wcout << str1 << endl;
   cout << &str2[0] << endl;
}
  

Requisitos

encabezado: <configuración regional>

espacio de nombres: std

Vea también

Referencia

ctype Class