[Actualités]
Les Technos : Episode du 7 avril
[Actualités]
Microsoft modifie OneDrive. Les fichiers supprimés ne seront plus placés dans ...
[Actualités]
Le Snapdragon 8 Elite Gen 6 Pro ne sera pas beaucoup plus puissant que son préd...
[Actualités]
Samsung augmente à nouveau les prix de la mémoire DRAM
[Actualités]
Microsoft impose les mises à jour de Windows 11.
[Actualités]
Apple n'a quasiment rien changé aux AirPods Max 2.
[Actualités]
Microsoft met en garde contre sa propre IA : Copilot n’est là que « pour sâ€...
[Actualités]
Ubuntu relève ses exigences. 4 Go de RAM ne suffisent plus.
[Actualités]
Test John Carpenter's Toxic Commando (PS5) - Une expérience qui a (forcément) ...
[Actualités]
Le prix des processeurs Intel devrait augmenter de 30 % cette année.
[Articles]
John Carpenter's Toxic Commando
[Articles]
ROMEO IS A DEAD MAN
[Articles]
Promise Cinderella tome 7
[Articles]
Shiba Inu Rooms tome 1
[Articles]
Project Songbird
[Articles]
Mon adolescence explosive tome 2
[Articles]
DOOMSDAY WAR - Rekkyo Sensen tome 3
[Articles]
Etrange Overlord
[Articles]
Resident Evil Requiem
[Articles]
Développeurs - Bienvenue dans le marécage de la création tome 1
Se connecter
Se connecter
Inscription
Mot de passe perdu
Connexion
Actualités
Lettre d'information
Proposer une actualité
Archives
Actualités
Articles
Programmation
Press Release
Matériel
Logiciels
Livres
Interviews
Derniers commentaires
Jeux Vidéos
XBox One
XBox 360
Wii U
PSP
PS4
PS3
PC
DS
GameCube
3DS
Forum
Derniers messages
Informatique
Fun
Divers
Logithèque
Blogs
Divers
A Propos
Annonceurs
Contact
Recherche
RSS
Se connecter
Se connecter
Inscription
Mot de passe perdu
Connexion
Editer un article
Titre
Mots Clés
Texte
[size=18] [b]Nom[/b] [/size] gets, fgetc, fgets, getc, getchar, ungetc - Saisie de caractères et de chaînes. [size=18] [b]Résumé[/b] [/size] .nf [b]#include
[/b] [b][i]int fgetc (FILE * stream );[/i][/b] .nl [b][i]char * fgets (char * s , int size , FILE * stream );[/i][/b] .nl [b][i]int getc (FILE * stream );[/i][/b] .nl [b][i] int getchar (void);[/i][/b] .nl [b][i]char * gets (char * s );[/i][/b] .nl [b][i]int ungetc (int c , FILE * stream );[/i][/b] [size=18] [b]Description[/b] [/size] [b]fgetc()[/b] lit le caractère suivant depuis le flux [i]stream [/i] et le renvoie sous forme d'un [b]unsigned char ,[/b] transformé en [b]int ,[/b] ou [b]EOF[/b] en cas d'erreur ou de fin de fichier. [b]getc()[/b] est équivalent à [b]fgetc()[/b] sauf qu'il peut être implementé sous forme de macro, qui évalue l'argument [i]stream[/i] plusieurs fois. [b]getchar()[/b] est équivalent à [b][i]getc( stdin ).[/i][/b] [b]gets()[/b] lit une ligne depuis [i]stdin[/i] et la place dans le buffer pointé par [i]s[/i] jusqu'à atteindre un retour-chariot, ou [b]EOF ,[/b] qu'il remplace par [b]'e0' .[/b] Il n'y a pas de vérification de débordement de buffer (voir plus bas la section [b]BOGUE[/b] plus bas). [b]fgets()[/b] lit au plus [i]size - 1[/i] caractères depuis [i]stream[/i] et les place dans le buffer pointé par [b]s .[/b] La lecture s'arrête après [b]EOF[/b] ou un retour-chariot. Si un retour-chariot (newline) est lu, il est placé dans le buffer. Un caractère nul [b]'e0'[/b] est placé à la fin de la ligne. [b]ungetc()[/b] replace le caractère [i]c[/i] dans le flux [b]stream ,[/b] en le transformant en [b]unsigned char ,[/b] où il sera disponible pour une lecture ultérieure. Les caractères replacés seront renvoyés en ordre inverse. Le fonctionnement n'est garantit que pour le replacement d'un seul caractère. Les fonctions décrites ci-dessus peuvent être utilisées conjointement, ainsi qu'avec les autres fonctions de lecture de la bibliothèque [b]stdio .[/b] Pour les versions de ces fonctions ignorant les verrouillages, voir [b]unlocked_stdio (3).[/b] [size=18] [b]Valeur renvoyée[/b] [/size] [b]fgetc() , getc() et getchar()[/b] renvoie un caractère, lu comme un [b]unsigned char ,[/b] et transformé en [b]int ,[/b] ou [b]EOF[/b] à la fin du fichier, ou en cas d'erreur. [b]gets() et fgets()[/b] renvoient le pointeur [i]s[/i] si elles réussissent, et [b]NULL[/b] en cas d'erreur, ou si la fin de fichier est atteinte avant d'avoir pu lire au moins un caractère. [b]ungetc()[/b] renvoie [i]c[/i] s'il reussit, ou [b]EOF[/b] en cas d'erreur. [size=18] [b]Conformité[/b] [/size] ANSI - C, POSIX.1 [size=18] [b]Bugs[/b] [/size] N'utilisez jamais [b]gets ().[/b] Comme il est impossible de savoir à l'avance combien de caractères seront lus par [b]gets() , [/b] et comme celui-ci écrira tous les caractères lus, même s'ils débordent du buffer, cette fonction est extrèmement dangereuse à utiliser. On a déjà utilisé ce dysfonctionnement pour créer des trous de sécurité. UTILISEZ TOUJOURS [b]fgets()[/b] A LA PLACE DE [b]gets() .[/b] Il est fortement déconseillé de mélanger les appels aux fonctions de lecture de la bibliothèque [b]stdio[/b] avec les appels aux fonctions de lecture bas-niveau [b]read()[/b] sur le descripteur de fichier associé au flux. Les résultats sont indéfinis, et très probablement indésirables. [size=18] [b]Voir aussi[/b] [/size] [b]read (2),[/b] [b]write (2),[/b] [b]fopen (3),[/b] [b]fread (3),[/b] [b]scanf (3),[/b] [b]puts (3),[/b] [b]fseek (3),[/b] [b]ferror (3),[/b] [b]unlocked_stdio (3)[/b] [size=18] [b]Traduction[/b] [/size] Christophe Blaess, 1996-2003.
Fichier
Newsletter
Recevez les dernières actualités tech directement dans votre boîte mail.
S'inscrire
Forum
-
Derniers messages
Bavardages
Aujourd'hui, je rénove ou je construis ^^
Bavardages
Séries TV, vous regardez quoi?
Informations
Besoin d’avis sur l’UX de mon mini-projet web (et plus globalement sur ce qui vous rebute sur un site) ?
Software
problème sur windows 10
Réseaux et Télécom
Problème wifi (POE)
Software
Postfix - Need help
Bavardages
Oh râge oh désespoir !
Programmation
Enregistrement client et envoi mail
Software
SÉCURITÉ MACBOOK
Hardware
conseil matos réseau?
Actualités
-
Archives
Les Technos
07-04
Les Technos : Episode du 7 avril
Microsoft
06-04
Microsoft modifie OneDrive. Les fichiers supprimés ne seront plus placés dans la Corbeille Windows.
Mobile
06-04
Le Snapdragon 8 Elite Gen 6 Pro ne sera pas beaucoup plus puissant que son prédécesseur.
Matériel
06-04
Samsung augmente à nouveau les prix de la mémoire DRAM
Windows
06-04
Microsoft impose les mises à jour de Windows 11.
Ada
CSS
Cobol
CPP
HTML
Fortran
Java
JavaScript
Pascal
Perl
PHP
Python
SQL
VB
XML
Anon URL
DailyMotion
eBay
Flickr
FLV
Google Video
Google Maps
Metacafe
MP3
SeeqPod
Veoh
Yahoo Video
YouTube
6px
8px
10px
12px
14px
16px
18px
Informaticien.be
- © 2002-2026
Akretio
SRL - Generated via
Kelare
Haut de page