mbtowc - Convertir une séquences multioctet en caractères larges
Bibliothèque C standard (
libc,
-lc)
#include <stdlib.h>
int mbtowc(wchar_t *restrict pwc, const char s[restrict .n], size_t n);
The main case for this function is when
s is not NULL and
pwc is
not NULL. In this case, the
mbtowc() function inspects at most
n
bytes of the multibyte string starting at
s, extracts the next complete
multibyte character, converts it to a wide character and stores it at
*pwc. It updates an internal shift state known only to the
mbtowc() function. If
s does not point to a null byte ('\0'), it
returns the number of bytes that were consumed from
s, otherwise it
returns 0.
Si les
n octets débutants en
s ne contiennent pas un
caractère multioctet complet, ou s'il s'agit d'une séquence
incorrecte,
mbtowc() renvoie -1. Ceci peut se produire même si
n est supérieur ou égal à
MB_CUR_MAX, si la
chaîne multioctet contient des séquences de décalage
redondantes.
Un autre cas possible se présent si
s est non NULL, mais
pwc est NULL. Dans ce cas, la fonction
mbtowc() se comporte
comme ci-dessus, mais ne stocke par le caractère large en
mémoire.
Un troisième cas est possible si
s est NULL. Alors,
pwc et
n sont ignorés. La fonction
mbtowc() réinitialise
l'état de décalage, qu'elle seule connaît, et renvoie une
valeur non nulle si l'encodage à un état de décalage non
trivial, ou zéro si l'encodage est sans état.
Si
s est non NULL, la fonction
mbtowc() renvoie le nombre d'octets
consommés à partir de
s, ou zéro si
s
pointe sur un octet nul, ou encore -1 en cas d'erreur.
Si
s est NULL, la fonction
mbtowc() renvoie une valeur non nulle
si l'encodage a un état de décalage non trivial, ou zéro
si l'encodage est sans état.
Pour une explication des termes utilisés dans cette section, consulter
attributes(7).
Interface |
Attribut |
Valeur |
mbtowc() |
Sécurité des threads |
MT-Unsafe race |
POSIX.1-2001, POSIX.1-2008, C99.
Le comportement de
mbtowc() dépend de la catégorie
LC_CTYPE de la localisation en cours.
Cette fonction n'est pas sûre en contexte multithread. La fonction
mbrtowc(3) fournit une meilleure interface pour la même
fonctionnalité.
MB_CUR_MAX(3),
mblen(3),
mbrtowc(3),
mbstowcs(3),
wcstombs(3),
wctomb(3)
La traduction française de cette page de manuel a été
créée par Christophe Blaess
<
https://www.blaess.fr/christophe/>, Stéphan Rafin
<
[email protected]>, Thierry Vignaud
<
[email protected]>, François Micaux, Alain Portal
<
[email protected]>, Jean-Philippe Guérard
<
[email protected]>, Jean-Luc Coulon (f5ibh)
<
[email protected]>, Julien Cristau
<
[email protected]>, Thomas Huriaux <
[email protected]>,
Nicolas François <
[email protected]>, Florentin
Duneau <
[email protected]>, Simon Paillard
<
[email protected]>, Denis Barbier
<
[email protected]> et David Prévot <
[email protected]>
Cette traduction est une documentation libre ; veuillez vous reporter
à la
GNU
General Public License version 3 concernant les conditions de copie
et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel,
veuillez envoyer un message à
[email protected]