Que signifie cette ligne cin.ignore(numeric_limits<streamsize>::max(), '\n')
dans la programmation C++? Est-ce que cela ignore réellement la dernière entrée de l'utilisateur?
Cette ligne ignore le reste de la ligne actuelle, jusqu'à '\n'
ou EOF
- selon la première éventualité:
'\n'
définit le délimiteur, c’est-à-dire le caractère après lequel cin
arrête d’ignorernumeric_limits<streamsize>::max()
définit le nombre maximum de caractères à ignorer. Comme il s'agit de la limite supérieure de la taille d'un flux, vous indiquez à cin
qu'il n'y a pas de limite au nombre de caractères à ignorer.cin.ignore (numeric_limits <streamsize> :: max (), '\ n');
Ici, le \n
fait office de délimiteur .... c’est le point auquel le code doit être ignoré (sous la forme "\ n" dans ce cas particulier). Et max()
définit qu'il n'y a pas de limite à ce que l'on peut ignorer, les espaces, les tabulations doivent être ignorés jusqu'à la fin de la ligne.