PUTC |
Mettre un caractère |
---|---|
Langage C | stdio.h |
Syntaxe
int putc(int car,FILE *ptrfichier); |
Paramètres
Nom | Description |
---|---|
car | Ce paramètre permet d'indiquer le caractère à écrire |
ptrfichier | Ce paramètre permet d'indiquer l'identificateur de fichier |
Description
Cette fonction effectue l'écriture de caractère dans un fichier.
Algorithme
MODULE PUTC(c,stream) * Vérifier si le flux est valide SI stream = NULL ou stream est fermé ALORS * Erreur : flux invalide RETOURNE EOF FIN SI * Convertir c en un caractère non signé character ← c modulo 256 * Assurer que c est un octet * Écrire le caractère dans le flux SI write_to_stream(stream, character) échoue ALORS * Erreur d'écriture RETOURNE EOF FIN SI * Retourner le caractère écrit RETOURNE character |
Remarques
- Retour de la valeur écrite : Lorsque putc écrit un caractère avec succès, elle retourne la valeur du caractère écrit. En cas d'erreur (par exemple, si le flux est fermé ou inaccessible), elle retourne la constante EOF, indiquant une fin de fichier ou une erreur.
- Différence avec fputc : Bien que putc et fputc aient des fonctionnalités similaires, putc est souvent implémentée en tant que macro, tandis que fputc est toujours une fonction. Cela peut rendre putc légèrement plus rapide, mais moins sûre dans certains environnements.
- Compatibilité avec les flux binaires et texte : putc peut être utilisée avec des fichiers ouverts en mode texte ou binaire. En mode binaire, elle écrit directement les octets sans conversion. En mode texte, des conversions (comme la gestion des caractères de fin de ligne) peuvent se produire en fonction de la plateforme.
- Gestion des erreurs : En cas d'échec de l'écriture, putc ne signale pas explicitement la nature de l'erreur. Il est donc utile de vérifier la valeur de retour et, si nécessaire, d'utiliser la fonction ferror pour déterminer la cause de l'erreur sur le flux de données.
- Portabilité et performance : Étant donné que putc peut être implémentée comme une macro, elle est souvent optimisée pour une meilleure performance par rapport à des fonctions équivalentes. Cependant, cette optimisation peut entraîner des problèmes de portabilité dans des environnements non standard.
- Usage dans les systèmes à faible niveau : Dans les environnements où les performances sont critiques (comme les systèmes embarqués ou les applications temps réel), putc est préférée pour son efficacité et sa simplicité. Elle peut être utilisée pour transmettre des caractères sur des périphériques de sortie tels que des écrans ou des ports série.
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++) putc(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 - fprintf
Langage de programmation - C - Référence de procédures et fonctions - fputc
Langage de programmation - C - Référence de procédures et fonctions - fwrite
Langage de programmation - C - Référence de procédures et fonctions - getchar
Langage de programmation - C++ - Référence de procédures et fonctions - putc
Références
Langage C, Edition Micro-Application, Gehard Willms, 2001, ISBN: 2-7429-2008-0, page 733.
Borland C++ for Windows 4.0, Library Reference, Edition Borland, 1993, Part # BCP1240WW21772, page 201.