C ++ c32rtomb () - Biblioteca estándar de C ++

La función c32rtomb () en C ++ convierte un carácter de 32 bits en una representación en una representación de caracteres multibyte estrecha.

La función c32rtomb () se define en el archivo de encabezado.

prototipo c32rtomb ()

 size_t c32rtomb (char * s, char32_t c32, mbstate_t * ps);

La función c32rtomb () convierte el carácter utf-32 c32 en su equivalente multibyte y lo almacena en el objeto señalado por s.

Si s representa un puntero nulo, la llamada es equivalente a c32rtomb (buf, U ' 0', ps) para algún búfer interno.

Si c32 es el carácter ancho nulo, es decir, U ' 0', se almacena un byte nulo.

Parámetros de c32rtomb ()

  • s: puntero a una matriz de caracteres donde se almacena el carácter multibyte.
  • c32: el carácter de 32 bits que se va a convertir.
  • ps: un puntero a un objeto mbstate_t utilizado al interpretar la cadena multibyte.

c32rtomb () Valor de retorno

  • En caso de éxito, la función c32rtomb () devuelve el número de bytes escritos en la matriz de caracteres señalada por s.
  • En caso de error, se devuelve -1 y errno se establece en EILSEQ .

Ejemplo: ¿Cómo funciona la función c32rtomb ()?

 #include #include using namespace std; int main() ( const char32_t str() = U"C++ is super fast."; char s(50); mbstate_t ps(); size_t length; int j = 0; while (str(j)) ( length = c32rtomb(s, str(j), &ps); if ((length == 0) || (length> 50)) break; for (int i=0; i 

When you run the program, the output will be:

 C++ is super fast.

Articulos interesantes...