.\" -*- coding: UTF-8 -*- '\" t .\" Copyright, Bruno Haible .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: GPL-2.0-or-later .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH wprintf 3 "8 février 2026" "Pages du manuel de Linux 6.18" .SH NOM wprintf, fwprintf, swprintf, vwprintf, vfwprintf, vswprintf \- Formater des chaînes de caractères larges .SH BIBLIOTHÈQUE Bibliothèque C standard (\fIlibc\fP,\ \fI\-lc\fP) .SH SYNOPSIS .nf \fB#include \fP \fB#include \fP .P \fBint wprintf(const wchar_t *restrict \fP\fIformat\fP\fB, ...);\fP \fBint fwprintf(FILE *restrict \fP\fIstream\fP\fB,\fP \fB const wchar_t *restrict \fP\fIformat\fP\fB, ...);\fP \fBint swprintf(\fPsize_t n; \fB wchar_t \fP\fIwcs\fP\fB[restrict \fP\fIn\fP\fB], size_t \fP\fIn\fP\fB,\fP \fB const wchar_t *restrict \fP\fIformat\fP\fB, ...);\fP .P \fBint vwprintf(const wchar_t *restrict \fP\fIformat\fP\fB, va_list \fP\fIargs\fP\fB);\fP \fBint vfwprintf(FILE *restrict \fP\fIstream\fP\fB,\fP \fB const wchar_t *restrict \fP\fIformat\fP\fB, va_list \fP\fIargs\fP\fB);\fP \fBint vswprintf(\fPsize_t n; \fB wchar_t \fP\fIwcs\fP\fB[restrict \fP\fIn\fP\fB], size_t \fP\fIn\fP\fB,\fP \fB const wchar_t *restrict \fP\fIformat\fP\fB, va_list \fP\fIargs\fP\fB);\fP .fi .P .RS -4 Exigences de macros de test de fonctionnalités pour la glibc (consulter \fBfeature_test_macros\fP(7)) : .RE .P .\" .BR wprintf (), .\" .BR fwprintf (), .\" .BR swprintf (), .\" .BR vwprintf (), .\" .BR vfwprintf (), .\" .BR vswprintf (): Pour toutes les fonctions ci\-dessus : .nf " _XOPEN_SOURCE >= 500 || _ISOC99_SOURCE\n" || _POSIX_C_SOURCE >= 200112L .fi .SH DESCRIPTION La famille de fonctions \fBwprintf\fP() est l'équivalent pour les caractères larges de la famille de fonctions \fBprintf\fP(3). Elle réalise une mise en forme des caractères larges. .P Les fonctions \fBwprintf\fP() et \fBvwprintf\fP() réalisent le traitement et la sortie de chaînes de caractères larges sur \fIstdout\fP. \fIstdout\fP ne doit pas être orienté octet (consultez \fBfwide\fP(3) pour plus d'informations). .P Les fonctions \fBfwprintf\fP() et \fBvfwprintf\fP() réalisent la mise en forme de chaînes de caractères larges en vue d'une écriture dans le fichier \fIflux\fP. \fIflux\fP ne doit pas être orienté octet (consultez \fBfwide\fP(3) pour plus d'informations). .P The \fBswprintf\fP() and \fBvswprintf\fP() functions perform wide\-character output to an array of wide characters. The programmer must ensure that there is room for at least \fIn\fP wide characters at \fIwcs\fP. .P Ces fonctions se comportent de la même manière que les fonctions \fBprintf\fP(3), \fBvprintf\fP(3), \fBfprintf\fP(3), \fBvfprintf\fP(3), \fBsprintf\fP(3) et \fBvsprintf\fP(3), hormis les différences suivantes\ : .TP \fB\[bu]\fP La chaîne \fIformat\fP est une chaîne de caractères larges. .TP \fB\[bu]\fP La sortie est faite de caractères larges, pas d'octets. .TP \fB\[bu]\fP \fBswprintf\fP() and \fBvswprintf\fP() take a \fIn\fP argument, \fBsprintf\fP(3) and \fBvsprintf\fP(3) do not. (\fBsnprintf\fP(3) and \fBvsnprintf\fP(3) take a \fIn\fP argument, but these functions do not return \-1 upon buffer overflow on Linux.) .P Le traitement des caractères de conversion \fBc\fP et \fBs\fP est différent\ : .TP \fBc\fP Si aucun modificateur \fBl\fP n'est présent, l'argument \fIint\fP est converti en un caractère large par un appel à la fonction \fBbtowc\fP(3) et le caractère large en résultant est écrit. Si un modificateur \fBl\fP est présent, l'argument \fIwint_t\fP (caractère large) est écrit. .TP \fBs\fP Si aucun modificateur \fBl\fP n'est présent, l'argument \fIconst\ char\ *\fP est interprété comme un pointeur sur un tableau de caractères (une chaîne) contenant une séquence de caractères multioctets commençant à l'état initial de décalage . Les caractères du tableau sont convertis en caractères larges (un par un par l'appel de la fonction \fBmbrtowc\fP(3) avec un état de conversion réinitialisé avant le premier octet). La chaîne de caractères larges en résultant est écrite jusqu'au caractère NULL final (L\[aq]\[rs]0\[aq]) non compris. Si la précision est donnée, le nombre de caractères larges écrits ne la dépassera pas. Notez bien que la précision détermine le nombre de \fIcaractères larges\fP écrits et non le nombre d'\fIoctets\fP ou de \fIpositions d'écran\fP. Le tableau doit contenir un octet NULL final (\[aq]\[rs]0\[aq]), à moins que la précision donnée soit si petite que le nombre de caractères larges convertis est atteint avant la fin du tableau. Si un modificateur \fBl\fP est présent, l'argument \fIconst\ wchar_t\ *\fP est interprété comme un pointeur sur un tableau de caractères larges. Les caractères larges du tableau sont écrits jusqu'au caractère NULL final non compris. Si la précision est indiquée, le nombre de caractères écrits ne la dépassera pas. Le tableau doit contenir un caractère NULL final à moins que la précision donnée soit inférieure ou égale au nombre de caractères larges du tableau. .SH "VALEUR RENVOYÉE" The functions return the number of wide characters written, excluding the terminating null wide character in case of the functions \fBswprintf\fP() and \fBvswprintf\fP(). On error, \-1 is returned, and \fIerrno\fP is set to indicate the error. .SH ERREURS See \fBwrite\fP(2) and \fBputwc\fP(3). In addition, the following error may occur: .TP \fBEOVERFLOW\fP The value to be returned is greater than \fBINT_MAX\fP. .P The \fBfwprintf\fP() and \fBwprintf\fP() functions may fail additionally if: .TP \fBENOMEM\fP Insufficient storage space is available. .SH ATTRIBUTS Pour une explication des termes utilisés dans cette section, consulter \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. Interface Attribut Valeur T{ .na .nh \fBwprintf\fP(), \fBfwprintf\fP(), \fBswprintf\fP(), \fBvwprintf\fP(), \fBvfwprintf\fP(), \fBvswprintf\fP() T} Sécurité des threads MT\-Safe locale .TE .SH NORMES C11, POSIX.1\-2008. .SH HISTORIQUE POSIX.1\-2001, C99. .SH NOTES The behavior of \fBwprintf\fP() et al.\& depends on the \fBLC_CTYPE\fP category of the current locale. .P Si la chaîne \fIformat\fP contient des caractères larges non ASCII, le programme ne fonctionnera correctement que si la catégorie \fBLC_CTYPE\fP de la régionalisation de l'exécution est la même que lors de la compilation. En effet, la représentation de \fIwchar_t\fP dépend de l'architecture et de la régionalisation. La glibc représente les caractères larges à l'aide de leurs codes Unicode (ISO/IEC 10646), mais les autres architectures ne font pas de même. De plus, l'utilisation des noms de caractères universels de C99 (de la forme \[rs]unnnn) ne résout pas ce problème. Aussi, la chaîne \fIformat\fP ne devrait être constituée que de caractères larges ASCII dans les programmes internationalisés, ou alors elle doit être construite à l'exécution de manière internationalisée (en utilisant par exemple \fBgettext\fP(3) ou \fBiconv\fP(3), suivi de \fBmbstowcs\fP(3)). .SH "VOIR AUSSI" \fBfprintf\fP(3), \fBfputwc\fP(3), \fBfwide\fP(3), \fBprintf\fP(3), \fBsnprintf\fP(3) .\" .BR wscanf (3) .PP .SH TRADUCTION La traduction française de cette page de manuel a été créée par Christophe Blaess , Stéphan Rafin , Thierry Vignaud , François Micaux, Alain Portal , Jean-Philippe Guérard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas François , Florentin Duneau , Simon Paillard , Denis Barbier , David Prévot , Frédéric Hantrais et Grégoire Scano . .PP Cette traduction est une documentation libre ; veuillez vous reporter à la .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License version 3 .UE concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE. .PP Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à .MT debian-l10n-french@lists.debian.org .ME .