Provided by: manpages-fr-dev_4.21.0-2_all bug

NOM

       wcsrtombs - Convertir une chaîne de caractères larges en séquence multioctet

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <wchar.h>

       size_t wcsrtombs(char dest[restrict .len], const wchar_t **restrict src,
                        size_t len, mbstate_t *restrict ps);

DESCRIPTION

       Si  dest  n'est  pas  NULL, la fonction wcsrtombs() convertit les caractères larges depuis la chaîne *src
       vers la séquence multioctet située en dest. Au plus  len  octets  seront  écrits  dans  dest.  L'état  de
       conversion  *ps  est  mis  à  jour. La conversion est réalisée en invoquant wcrtomb(dest, *src, ps) aussi
       longtemps que cet appel réussit, en augmentant à chaque  fois  dest  du  nombre  d'octets  écrits  et  en
       incrémentant *src. La conversion peut s'arrêter 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 *src pointera sur le  caractère  non  valable  et  la  fonction
          renverra (size_t) -1 et place EILSEQ dans errno.

       -  La  limite  len  est  atteinte.  Dans  ce cas *src pointera sur le caractère suivant à convertir et la
          fonction renvoie le nombre d'octets écrits dans dest.

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

       Si dest est NULL, la longueur len 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'il  n'y a pas de limite de longueur en
       destination.

       Dans tous les cas, si ps est NULL, un état anonyme statique,  réservé  à  la  fonction  wcsrtombs(),  est
       utilisé à sa place.

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

VALEUR RENVOYÉE

       La  fonction  wcsrtombs()  renvoie  le  nombre  d'octets  constituant  la partie convertie de la séquence
       multioctet, sans compter l'octet nul final.  Si  elle  rencontre  un  caractère  large  qu'elle  ne  peut
       convertir, elle renvoie (size_t) -1 et place EILSEQ dans errno.

ATTRIBUTS

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

       ┌────────────┬──────────────────────┬────────────────────────────────────────────────────────────────────┐
       │InterfaceAttributValeur                                                             │
       ├────────────┼──────────────────────┼────────────────────────────────────────────────────────────────────┤
       │wcsrtombs() │ Sécurité des threads │ MT-Unsafe race:wcsrtombs/!ps                                       │
       └────────────┴──────────────────────┴────────────────────────────────────────────────────────────────────┘

STANDARDS

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

NOTES

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

       Passer NULL dans ps n'est pas sûr dans un contexte multithread.

VOIR AUSSI

       iconv(3), mbsinit(3), wcrtomb(3), wcsnrtombs(3), wcstombs(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>,    David    Prévot
       <david@tilapin.org>,   Jean-Baptiste   Holcroft    <jean-baptiste@holcroft.fr>    et    Grégoire    Scano
       <gregoire.scano@malloc.fr>

       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⟩.