zion - mbtowc
Nom
mbtowc - Convertir une séquences multi-octets en caractères étendus.
Résumé
.nf #include <stdlib.h> int mbtowc (wchar_t * pwc , const char * s , size_t n ); .fi
Description
L'utilisation habituelle de cette fonction est avec s et pwc tous deux différents NULL . Dans ce cas, la fonction mbtowc examine au plus n octets de la chaîne multi-octets commençant à l'adresse s , extrait le premier caractère multi-octets complet, le convertit en caractère large et le stocke dans *pwc . Elle met à jour l'état interne de décalage, connu d'elle seule. Si s ne pointe pas sur un octet nul, elle renvoie le nombre d'octets qui ont été consommés dans s , sinon, elle renvoie zéro.
Si les n octets débutant en s ne contiennent pas un caractère multi-octets complet, ou s'il s'agit d'une séquence invalide, mbtowc renvoie -1. Ceci peut se produire même si n est supérieur ou égal à MB_CUR_MAX , si la chaîne multi-octets contient des séquences de décalage redondantes.
Un autre cas possible se présent si s est non NULL , mais pwc est NULLL . 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 connait, 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.
Valeur renvoyée
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.
Conformité
ISO/ANSI C, UNIX98
Voir aussi
mbrtowc (3), mbstowcs (3), MB_CUR_MAX (3)
Notes
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 multi-threads. La fonction mbrtowc () fournit une meilleure interface pour la même fonctionnalité. SH TRADUCTION Christophe Blaess, 1996-2003.
Poster un commentaire