FPUTC |
Caractère à mettre dans le fichier |
---|---|
Langage C | stdio.h |
Syntaxe
int fputc(int car,FILE *ptrfichier); |
Paramètres
Nom | Description |
---|---|
ptrfichier | Ce paramètre permet d'indiquer l'identificateur de fichier |
car | Ce paramètre permet d'indiquer le caractère à écrire |
Description
Cette fonction effectue l'écriture de caractère dans un fichier.
Algorithme
MODULE FPUTC(character, file) SI file est NULL ALORS RETOURNE Erreur "Fichier non ouvert" FIN SI SI le fichier n'est pas accessible en mode écriture ALORS RETOURNE Erreur "Le fichier n'est pas en mode écriture" FIN SI * Essayer d'écrire character dans le file SI l'écriture réussit ALORS RETOURNE le caractère écrit SINON RETOURNE EOF (indiquant une erreur) FIN SI |
Remarques
- Écriture de caractères dans un flux de données : La fonction fputc est utilisée pour écrire un caractère unique dans un flux de fichier. Elle est particulièrement adaptée pour les tâches où les données doivent être écrites caractère par caractère, comme lors de la création de fichiers texte à partir de données binaires traitées en petits morceaux.
- Retourne le caractère écrit en cas de succès : fputc retourne le caractère écrit en tant que valeur entière s'il réussit, ou EOF en cas d'échec. Vérifier cette valeur est essentiel pour détecter les erreurs, notamment dans les systèmes où les ressources de fichiers peuvent être limitées.
- Fonction compatible avec les tampons : Comme les autres fonctions de la bibliothèque standard, fputc utilise un tampon pour optimiser les écritures. Cela signifie que les caractères peuvent ne pas être immédiatement enregistrés sur le disque. Pour s'assurer que les données sont écrites, on peut utiliser fflush sur le flux de données.
- Dépendance au flux de fichier fourni : Le second paramètre de fputc est un pointeur vers un flux (de type FILE*) dans lequel le caractère doit être écrit. Si le flux n'est pas correctement ouvert en écriture ou si les permissions sont insuffisantes, l'appel à fputc échouera.
- Utilisation limitée pour les grands fichiers : Bien que fputc soit simple à utiliser, elle est inefficace pour écrire de grandes quantités de données, car chaque appel implique une opération distincte. Pour des écritures volumineuses, des fonctions comme fwrite ou fputs sont préférables.
- Codage des caractères et compatibilité Unicode : Sur certains systèmes, fputc peut ne pas gérer correctement les caractères Unicode s'ils dépassent un octet. Il est donc important de vérifier le codage de caractères utilisé dans l'application pour éviter des corruptions de données ou des écritures incorrectes.
- Manipulation de flux spéciaux comme stdout et stderr : fputc peut être utilisé pour écrire directement dans les flux standards comme stdout (affichage) ou stderr (erreurs). Cela en fait un outil pratique pour produire des sorties simples ou des messages de diagnostic pendant l'exécution d'un programme.
Exemple
Voici quelques exemples typiques de l'utilisation de cette fonction :
Essayer maintenant !
- #include <stdio.h>
- #include <stdlib.h>
-
- void putString(FILE * Handle,const char * string) {
- int I;
- for(I = 0; I < strlen(string); I++) fputc(string[I],Handle);
- }
-
- int main()
- {
- FILE * Handle = fopen("monfichier.txt", "w+");
- if(Handle != NULL) {
- putString(Handle,"Gladir.com\n");
- fclose(Handle);
- }
- return 0;
- }
on obtiendra le résultat suivant dans le fichier «monfichier.txt» :
Gladir.comVoir également
Langage de programmation - C - Référence de procédures et fonctions - fgetc
Langage de programmation - C - Référence de procédures et fonctions - putc
Langage de programmation - C++ - Référence de procédures et fonctions - fputc
Références
Langage C, Edition Micro-Application, Gehard Willms, 2001, ISBN: 2-7429-2008-0, page 731.
Borland C++ for Windows 4.0, Library Reference, Edition Borland, 1993, Part # BCP1240WW21772, page 110.
Dernière mise à jour : Mardi, le 28 juillet 2015