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.
| Suivant |