wcrtomb
Table des matières
Retour à l'index
NOM
wcrtomb - Convertir un caractère large en séquence multioctet
BIBLIOTHÈQUE
Bibliothèque C standard (libc, -lc)
SYNOPSIS
#include <wchar.h>
size_t wcrtomb(char *restrict s, wchar_t wc, mbstate_t *restrict ps);
DESCRIPTION
L'utilisation principale de cette fonction est le cas où s est non NULL,
et wc n'est pas un caractère large nul (L'\0'). Alors, la
fonction wcrtomb() convertit le caractère large wc à 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
est un caractère large nul (L'\0'). 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 '\0'. 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'\0', ps)
où tampon est un tampon interne anonyme.
Dans tous les cas ci-dessus, si ps est NULL, un état statique interne qui
n'est connu que de la fonction wcrtomb() est utilisé à la place.
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 locale en cours),
elle renvoie (size_t) -1 et place EILSEQ dans errno.
ATTRIBUTS
Pour une explication des termes utilisés dans cette section, consulter
attributes(7).
| Interface | Attribut | Valeur
|
|
wcrtomb()
| Sécurité des threads | MT-Unsafe race:wcrtomb/!ps
|
STANDARDS
C11, POSIX.1-2008.
HISTORIQUE
POSIX.1-2001, C99.
NOTES
Le comportement de wcrtomb() 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
mbsinit(3), wcsrtombs(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
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 à
Index
- NOM
-
- BIBLIOTHÈQUE
-
- SYNOPSIS
-
- DESCRIPTION
-
- VALEUR RENVOYÉE
-
- ATTRIBUTS
-
- STANDARDS
-
- HISTORIQUE
-
- NOTES
-
- VOIR AUSSI
-
- TRADUCTION
-
This document was created by
man2html,
using the manual pages.
Time: 05:06:30 GMT, September 19, 2025