open_wmemstream(3) Library Functions Manual open_wmemstream(3) NOM open_memstream, open_wmemstream - Ouvrir un flux associe a un tampon dynamique en memoire BIBLIOTHEQUE Bibliotheque C standard (libc, -lc) SYNOPSIS #include FILE *open_memstream(char **ptr, size_t *taille_tampon); #include FILE *open_wmemstream(wchar_t **ptr, size_t *taille_tampon); Exigences de macros de test de fonctionnalites pour la glibc (consulter feature_test_macros(7)) : open_memstream(), open_wmemstream() : Depuis la glibc 2.10 : _POSIX_C_SOURCE >= 200809L Avant la glibc 2.10 : _GNU_SOURCE DESCRIPTION La fonction open_memstream() ouvre un flux en ecriture vers un tampon en memoire. Le tampon est dynamiquement alloue et grandit automatiquement selon les besoins. La taille initiale du tampon est egale a zero. Apres la fermeture du flux, l'appelant doit liberer ce tampon a l'aide de free(3). Les adresses pointees par ptr et taille_tampon font respectivement reference a l'emplacement actuel du tampon et a sa taille. Les adresses pointees par ptr et taille_tampon sont mises a jour chaque fois qu'un flux est ferme a l'aide de fclose(3) ou vide a l'aide de fflush(3). Ces valeurs restent valables tant que l'appelant n'effectue pas de sortie sur le flux. Si d'autres sorties sont realisees, alors le flux doit etre de nouveau vide avant de pouvoir acceder a ces valeurs. Un octet de valeur zero est conserve a la fin du tampon. Cet octet n'est pas inclus dans la valeur de la taille stockee a l'adresse taille_tampon. Le flux associe au tampon conserve la valeur de la position d'ecriture actuelle dont la valeur initiale est zero (le debut du tampon). Chaque operation d'ecriture ajuste implicitement la position d'ecriture actuelle. La position d'ecriture associee au flux peut etre changee a l'aide de fseek(3) ou fseeko(3). Deplacer la position d'ecriture apres la fin des donnees deja ecrites remplit l'intervalle vide avec des octets de valeur zero. La fonction open_wmemstream() est similaire a open_memstream(), mais elle opere sur des caracteres larges et non sur des octets. VALEUR RENVOYEE Si elles reussissent, les fonctions open_memstream() et open_wmemstream() renvoient un pointeur de type FILE. Sinon, elles renvoient NULL et errno est definie pour preciser l'erreur. ATTRIBUTS Pour une explication des termes utilises dans cette section, consulter attributes(7). +---------------------------------+--------------------------+---------+ |Interface | Attribut | Valeur | +---------------------------------+--------------------------+---------+ |open_memstream(), | Securite des threads | MT-Safe | |open_wmemstream() | | | +---------------------------------+--------------------------+---------+ STANDARDS POSIX.1-2008. HISTORIQUE open_memstream() glibc 1.0.x. open_wmemstream() glibc 2.4. NOTES Il n'y a pas de descripteur de fichier associe au flux renvoye par ces fonctions (par exemple, fileno(3) renverra une erreur si elle est appelee avec un tel flux). BOGUES Avant la glibc 2.7, un positionnement apres la fin d'un flux cree par open_memstream() n'agrandit pas le tampon ; au lieu de cela, l'appel a fseek(3) echoue et renvoie -1. EXEMPLES Voir fmemopen(3). VOIR AUSSI fmemopen(3), fopen(3), setbuf(3) TRADUCTION La traduction francaise de cette page de manuel a ete creee par Christophe Blaess , Stephan Rafin , Thierry Vignaud , Francois Micaux, Alain Portal , Jean-Philippe Guerard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas Francois , Florentin Duneau , Simon Paillard , Denis Barbier , David Prevot , Frederic Hantrais et Lucien Gentis Cette traduction est une documentation libre ; veuillez vous reporter a la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITE LEGALE. Si vous decouvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message a . Pages du manuel de Linux 6.06 28 decembre 2023 open_wmemstream(3)