Une lecture non formatée est possible dans un flot dentrée, via les méthodes istream& get(char&)
et sa variante int get(void)
pour un caractère unique. Pour une série de caractères, on utilisera lune des méthodes suivantes :
istream& get(char*, int max, char = '\n');istream& read(char*, int max);istream& getline(char*, int max, char = '\n');
Toutes ces méthodes existent en fait en deux versions, pour signed char
et unsigned char
. La fonction get
à trois arguments lit une série de caractères et les place dans un tableau ; elle sarrête soit quand le nombre maximal indiqué est dépassé, soit quand le caractère final (de valeur par défaut '\n'
) est rencontré (ou encore si elle arrive en fin de fichier). Un caractère nul final est ajouté. La fonction getline
a le même effet sans troisième argument ; avec un troisième argument différent de '\n'
, elle sarrête lorsquelle rencontre le caractère final précisé ou la fin de la ligne '\n'
. Enfin la fonction read
lit un bloc de caractères de longueur indiquée sans aucun formatage.
Il existe aussi une fonction membre istream& get(streambuf&, char = '\n')
qui prend ses données dans un autre tampon.
Précédent | Sommaire | Suivant |