mbsinit(3) Library Functions Manual mbsinit(3)

mbsinit - comprueba el estado inicial de cambios

Biblioteca Estándar C (libc, -lc)

#include <wchar.h>
int mbsinit(const mbstate_t *ps);

Character conversion between the multibyte representation and the wide character representation uses conversion state, of type mbstate_t. Conversion of a string uses a finite-state machine; when it is interrupted after the complete conversion of a number of characters, it may need to save a state for processing the remaining characters. Such a conversion state is needed for the sake of encodings such as ISO/IEC 2022 and UTF-7.

El estado inicial es el estado al principio de la conversión de la cadena. Existen dos clases de estado: el que usan las funciones de conversión de multibyte a carácter ancho, tal como mbsrtowcs(3), y el que usan las funciones de conversión de carácter ancho a multibyte, tal como wcsrtombs(3), aunque ambos encajan en un mbstate_t, y ambos poseen la misma representación para un estado inicial.

For 8-bit encodings, all states are equivalent to the initial state. For multibyte encodings like UTF-8, EUC-*, BIG5, or SJIS, the wide character to multibyte conversion functions never produce non-initial states, but the multibyte to wide-character conversion functions like mbrtowc(3) do produce non-initial states when interrupted in the middle of a character.

Una forma posible de crear un mbstate_t en un estado inicial es asignarle un cero:


mbstate_t state;
memset(&state, 0, sizeof(state));

En Linux, lo siguiente también funciona, aunque podría producir advertencias del compilador:


mbstate_t state = { 0 };

La función mbsinit() comprueba si *ps se corresponde con un estado inicial.

mbsinit() returns nonzero if *ps is an initial state, or if ps is NULL. Otherwise, it returns 0.

Para obtener una explicación de los términos usados en esta sección, véase attributes(7).

Interfaz Atributo Valor
mbsinit() Seguridad del hilo Multi-hilo seguro

C11, POSIX.1-2008.

POSIX.1-2001, C99.

El comportamiento de mbsinit() depende de la categoría LC_CTYPE de la localización actual.

mbrlen(3), mbrtowc(3), mbsrtowcs(3), wcrtomb(3), wcsrtombs(3)

La traducción al español de esta página del manual fue creada por Juan Piernas <piernas@ditec.um.es> y Miguel Pérez Ibars <mpi79470@alu.um.es>

Esta traducción es documentación libre; lea la GNU General Public License Version 3 o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD.

Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a debian-l10n-spanish@lists.debian.org.

28 Enero 2024 Páginas de manual de Linux 6.06