Provided by: manpages-fr-dev_4.19.0-7_all bug

NOM

       mbtowc - Convertir une séquences multioctet en caractères larges

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <stdlib.h>

       int mbtowc(wchar_t *restrict pwc, const char s[restrict .n], size_t n);

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  multioctet
       commençant  à  l'adresse s, extrait le prochain caractère multioctet 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 (« \0 »), elle renvoie le nombre
       d'octets qui ont été consommés dans s, sinon, elle renvoie zéro.

       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.

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.

ATTRIBUTS

       Pour une explication des termes utilisés dans cette section, consulter attributes(7).

       ┌─────────────────────────────────────────────────┬──────────────────────┬────────────────┐
       │InterfaceAttributValeur         │
       ├─────────────────────────────────────────────────┼──────────────────────┼────────────────┤
       │mbtowc()                                         │ Sécurité des threads │ MT-Unsafe race │
       └─────────────────────────────────────────────────┴──────────────────────┴────────────────┘

STANDARDS

       POSIX.1-2001, POSIX.1-2008, C99.

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 multithread. La fonction mbrtowc(3) fournit  une
       meilleure interface pour la même fonctionnalité.

VOIR AUSSI

       MB_CUR_MAX(3), mblen(3), mbrtowc(3), mbstowcs(3), wcstombs(3), wctomb(3)

TRADUCTION

       La  traduction  française  de  cette  page  de  manuel  a  été créée par Christophe Blaess
       <https://www.blaess.fr/christophe/>, Stéphan  Rafin  <stephan.rafin@laposte.net>,  Thierry
       Vignaud  <tvignaud@mandriva.com>,  François Micaux, Alain Portal <aportal@univ-montp2.fr>,
       Jean-Philippe   Guérard   <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)    <jean-
       luc.coulon@wanadoo.fr>,    Julien    Cristau    <jcristau@debian.org>,    Thomas   Huriaux
       <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin
       Duneau  <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis
       Barbier <barbier@debian.org> et David Prévot <david@tilapin.org>

       Cette traduction est une documentation libre ; veuillez vous reporter  à  la  GNU  General
       Public   License   version 3  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  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 à ⟨debian-l10n-french@lists.debian.org⟩.