Date création : 27-03-2008 20:23:44
 Vous êtes dans : GNU/Linux Astuces / Pages man [Section3 - Sous-fonctions]
WCSRTOMBS
Index
- NOM
- SYNOPSIS
- DESCRIPTION
- VALEUR RENVOYÉE
- CONFORMITÉ
- VOIR AUSSI
- NOTES
- TRADUCTION
NOM
wcsrtombs - Convertir une chaîne de caractères larges en séquence multioctet
SYNOPSIS
#include <wchar.h>
size_t wcsrtombs(char *dest, const wchar_t **src,
size_t lng, mbstate_t *ps);
DESCRIPTION
Si dest n'est pas un pointeur 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 lng 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 se terminer pour trois raisons :
1. Un caractère large que l'on ne peut pas représenter par une séquence
multioctet (dans la localisation en cours) a été rencontré. Dans ce cas
*src pointera sur le caractère invalide, et la fonction renverra
(size_t)(-1) après avoir placé EILSEQ dans errno.
2. La limite lng est atteinte. Dans ce cas *src pointera sur le
caractère suivant à convertir, et la fonction renvoie le nombre d'octets
écrits dans dest.
3. La chaîne de caractères larges a été complètement convertie, y compris le
L' ' final (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 ' '.
Si dest est NULL, la longueur lng 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 un pointeur NULL, un état statique anonyme
propre à la fonction wcsrtombs est utilisé à la place.
Le programmeur doit s'assurer qu'il y a assez de place pour len octets au
minimum 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.
CONFORMITÉ
C99.
VOIR AUSSI
iconv(3), wcsnrtombs(3), wcstombs(3)
NOTES
Le comportement de wcsrtombs() dépend de la catégorie LC_CTYPE de la
localisation en cours.
L'utilisation d'un pointeur NULL pour ps n'est pas sûre dans un contexte
multithread.
TRADUCTION
Cette page de manuel a été traduite et mise à jour par
Christophe Blaess <http://www.blaess.fr/christophe/> entre 1996 et 2003,
puis par Alain Portal <aportal AT univ-montp2 DOT fr> jusqu'en 2006.
La traduction de cette page de manuel est basée sur les traductions
disponibles sur http://manpagesfr.free.fr/,
mais est gérée par l'équipe francophone de traduction de Debian
au travers de la liste de discussion debian-l10n-french.
Veuillez signaler toute erreur de traduction par un rapport de bogue sur
le paquet manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document en
utilisant la commande
« man -L C <section> <page_de_man> ».
|