Provided by: manpages-fr-dev_4.23.1-1_all bug

NOM

       wcstombs - Convertir une chaîne de caractères larges en chaîne de caractères multioctets

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <stdlib.h>

       size_t wcstombs(char dest[restrict .n], const wchar_t *restrict src,
                       size_t n);

DESCRIPTION

       Si  dest  n'est  pas NULL, la fonction wcstombs() convertit la chaîne de caractères larges
       src en une séquence multioctet située en dest. Au plus n octets seront écrits  dans  dest.
       La  séquence  de  caractères  écrits  dans dest débute dans l'état de décalage initial. La
       conversion peut se terminer pour trois raisons :

       -  Un caractère large que l'on ne peut pas représenter par une séquence  multioctet  (dans
          la locale utilisée) a été rencontré. Dans ce cas, la fonction renverra (size_t) -1.

       -  La  limite  de longueur force l'arrêt. Dans ce cas, le nombre d'octets écrits dans dest
          est renvoyé, mais l'état de décalage à cet endroit est perdu.

       -  La chaîne de caractères larges a été complètement convertie,  y  compris  le  caractère
          large  nul final (L'\0'). Dans ce cas, la conversion se termine dans l'état de décalage
          initial. La fonction renvoie le nombre d'octets écrits dans dest, sans compter  l'octet
          nul final ('\0').

       Le programmeur doit s'assurer qu'il y a assez de place pour au moins n octets dans dest.

       Si  dest  est  NULL,  la  longueur  n  est  ignorée,  et  la  conversion  se déroule comme
       précédemment, sauf que les octets convertis ne sont pas écrits  en  mémoire  et  qu’aucune
       limite de longueur n’existe en destination.

       Pour  éviter le cas 2 ci-dessus, le programmeur doit s'assurer que n est supérieur ou égal
       à wcstombs(NULL,src,0)+1.

VALEUR RENVOYÉE

       La fonction wcstombs() renvoie le nombre d'octets constituant la  partie  convertie  d’une
       séquence multioctet, sans compter l'octet NULL final. Si elle rencontre un caractère large
       qu'elle ne peut convertir, elle renvoie (size_t) -1.

ATTRIBUTS

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

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

VERSIONS

       La fonction wcsrtombs(3) fournit une meilleure interface pour la même fonctionnalité.

STANDARDS

       C11, POSIX.1-2008.

HISTORIQUE

       POSIX.1-2001, C99.

NOTES

       Le comportement de wcstombs() dépend de la catégorie LC_CTYPE de la locale utilisée.

VOIR AUSSI

       mblen(3), mbstowcs(3), mbtowc(3), wcsrtombs(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⟩.