Date création : 27-03-2008 20:23:44
 Vous êtes dans : GNU/Linux Astuces / Pages man [Section3 - Sous-fonctions]
WCRTOMB
Index
- NOM
- SYNOPSIS
- DESCRIPTION
- VALEUR RENVOYÉE
- CONFORMITÉ
- VOIR AUSSI
- NOTES
- TRADUCTION
NOM
wcrtomb - Convertir un caractère large en séquence multioctet
SYNOPSIS
#include <wchar.h>
size_t wcrtomb(char *s, wchar_t wc, mbstate_t *ps);
DESCRIPTION
L'utilisation principale de cette fonction est le cas où s est non NULL,
et wc n'est pas L' '. Alors, la fonction wcrtomb() convertit le
caractère large wc dans sa représentation multioctet, et l'enregistre au
début de la chaîne pointée par s. Elle met à jour l'état de conversion
*ps, et renvoie la longueur de la représentation multioctet, c'est-à-dire
le nombre d'octets écrits en s.
Une autre possibilité peut se présenter quand s est non NULL, mais wc
vaut L' '. Dans cette situation, la fonction wcrtomb() enregistre dans
la chaîne de caractères pointée par s la séquence de décalages nécessaire
pour ramener *ps à son état initial, suivie d'un octet ' '. Elle met à
jour l'état *ps (le ramène donc à l'état initial), et renvoie la longueur
de la séquence en ajoutant un pour compter le caractère nul final,
c'est-à-dire le nombre d'octets écrits dans s.
Un troisième cas se présente quand s est NULL. Alors, wc est ignoré,
et la fonction renvoie alors le résultat de wcrtomb(tampon,L' ',ps) où
tampon est un tampon interne.
Dans tous les cas ci-dessus, si ps est un pointeur NULL, un état statique
interne est utilisé à la place, qui n'est connu que de la fonction
wcrtomb().
VALEUR RENVOYÉE
La fonction wcrtomb() renvoie le nombre d'octets qui ont été - ou qui
auraient été - écrits dans le tableau d'octets s. Si wc ne peut pas
être représenté comme une séquence multioctet (dans la localisation en
cours), elle renvoie (size_t)(-1), et place EILSEQ dans errno .
CONFORMITÉ
C99.
VOIR AUSSI
wcsrtombs(3)
NOTES
Le comportement de wcrtomb() 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> ».
|