Espacios de nombres
Variantes
Acciones

Cadenas multibyte terminadas en nulo

De cppreference.com
< cpp‎ | string
 
 
 
Cadenas multibyte terminadas en nulo
Ancho / multibyte conversiones
Original:
Wide/multibyte conversions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Tipos
Original:
Types
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
 

Una cadena multibyte terminada en nulo (NTMBS por sus siglas en inglés, null-terminated multi-byte string), o "cadena multibyte", es una secuencia de bytes distintos de cero seguida por un byte con valor cero (el carácter de terminación nulo).

Cada carácter almacenado en la cadena puede ocupar más de un byte. La codificación utilizada para representar los caracteres en una cadena de caracteres multibyte es específico del entorno local: puede ser UTF-8, GB18030, EUC-JP, Shift-JIS, etc Por ejemplo, el array de caracteres {'\xe4','\xbd','\xa0','\xe5','\xa5','\xbd','\0'} es una NTMBS albergan la cadena "你好" en codificación UTF-8 multibyte: los tres primeros bytes codifican el carácter 你, los siguientes tres bytes codifican el carácter 好. La misma cadena codificada en GB18030 es el array de caracteres {'\xc4', '\xe3', '\xba', '\xc3', '\0' , donde cada uno de los dos caracteres se codifica como una secuencia de dos bytes.

En algunas codificaciones multibyte, cualquier secuencia de caracteres multibyte dada puede representar diferentes caracteres dependiendo de las secuencias de bytes anteriores, conocidos como "secuencias de desplazamiento". Tales codificaciones se conocen como dependientes del estado: se requiere el conocimiento del estado de desplazamiento actual para interpretar cada carácter. Una NTMBS sólo es válida si comienza y termina en el estado de desplazamiento inicial: si se utilizó una secuencia de desplazamiento la secuencia sin desplazamiento correspondiente tiene que estar presente antes del carácter de terminación nulo. Ejemplos de tales codificaciones son JIS de 7 bits, BOCU-1 y SCSU.

Una cadena de caracteres multibyte tiene un esquema compatible con una cadena de bytes terminada en nulo (NTBS), es decir, se puede almacenar, copiar y examinar utilizando los mismos servicios, excepto para el cálculo del número de caracteres. Si la configuración regional correcta está en vigor. las funciones de E/S también se encargan de las cadenas multibyte. Las cadenas multibyte se pueden convertir en, y desde las cadenas anchas utilizando las funciones miembro std::codecvt, std::wstring_convert, o las siguientes funciones de conversión dependientes de la configuración regional:

Contenido

[editar]Conversiones de caracteres multibyte/anchos

Definido en el archivo de encabezado <cstdlib>
Devuelve el número de bytes en el carácter multibyte siguiente.
(función)[editar]
Convierte el carácter multibyte siguiente a un carácter ancho.
(función)[editar]
Convierte un carácter ancho a su representación multibyte.
(función)[editar]
Convierte una cadena de caracteres multibyte estrecha a una cadena ancha.
(función)[editar]
Convierte una cadena ancha a una cadena de caracteres multibyte estrecha.
(función)[editar]
Definido en el archivo de encabezado <cwchar>
Comprueba si el objeto mbstate_t representa el estado inicial de cambios
Original:
checks if the mbstate_t object represents initial shift state
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(función)[editar]
ensancha un carácter estrecho de un solo byte a caracteres anchos, si es posible
Original:
widens a single-byte narrow character to wide character, if possible
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(función)[editar]
Limita un carácter ancho a un carácter estrecho de un solo byte, si es posible.
(función)[editar]
devuelve el número de bytes en el siguiente carácter multibyte, estado dado
Original:
returns the number of bytes in the next multibyte character, given state
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(función)[editar]
convierte el carácter multibyte junto al carácter amplio, estado dado
Original:
converts the next multibyte character to wide character, given state
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(función)[editar]
convierte una carácter ancho a su representación multibyte, estado dado
Original:
converts a wide character to its multibyte representation, given state
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(función)[editar]
convierte una cadena de caracteres multibyte estrecho a la cadena de ancho, estado dado
Original:
converts a narrow multibyte character string to wide string, given state
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(función)[editar]
convierte una cadena a cadena estrecha gama de caracteres multibyte, estado dado
Original:
converts a wide string to narrow multibyte character string, given state
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(función)[editar]
Definido en el archivo de encabezado <cuchar>
(C++11)
generar el próximo 16-bit de ancho carácter de una cadena multibyte estrecho
Original:
generate the next 16-bit wide character from a narrow multibyte string
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(función)[editar]
(C++11)
convertir un carácter ancho de 16-bit para reducir cadena multibyte
Original:
convert a 16-bit wide character to narrow multibyte string
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(función)[editar]
(C++11)
generar el próximo 32-bit de ancho carácter de una cadena multibyte estrecho
Original:
generate the next 32-bit wide character from a narrow multibyte string
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(función)[editar]
(C++11)
convertir un carácter ancho de 32-bit para reducir cadena multibyte
Original:
convert a 32-bit wide character to narrow multibyte string
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(función)[editar]

[editar]Tipos

Definido en el archivo de encabezado <cwchar>
conversión de la información de estado necesaria para repetir las cadenas de caracteres multibyte
Original:
conversion state information necessary to iterate multibyte character strings
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(clase)[editar]

[editar]Macros

Definido en el archivo de encabezado <climits>
MB_LEN_MAX
número máximo de bytes en un carácter multibyte
Original:
maximum number of bytes in a multibyte character
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(constante de macro)[editar]
Definido en el archivo de encabezado <cstdlib>
MB_CUR_MAX
número máximo de bytes en un carácter multibyte en la actual C locale
(variables macro)
Original:
maximum number of bytes in a multibyte character in the current C locale
(variables macro)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
[editar]
Definido en el archivo de encabezado <cuchar>
__STDC_UTF_16__
(C++11)
Indica que la codificación UTF-16 se usa por mbrtoc16 y c16rtomb
(constante de macro)
__STDC_UTF_32__
(C++11)
Indica que la codificación UTF-32 se usa por mbrtoc32 y c32rtomb
(constante de macro)

[editar]Véase también

Documentación de C para Cadenas multibyte terminadas en nulo
close