Trouver un espace en C : surmonter le dilemme du symbole spatial
En C, rencontrer des difficultés à saisir des caractères d'espace peut laisser les programmeurs perplexes. Le comportement par défaut de la fonction cin lui fait ignorer les espaces, ce qui rend difficile la détection des espaces saisis par l'utilisateur.
Correction du comportement par défaut
Pour résoudre ce problème, une option consiste à modifier le comportement de cin à l'aide du manipulateur noskipws. Cette directive demande à cin de prendre en compte les espaces, y compris les espaces.
cin >> noskipws >> a[i];
Une approche alternative avec get()
Alternativement, si l'extraction de caractères individuels est préférée, le get () la fonction offre une solution plus simple. Cette approche implique l'utilisation de get() pour lire directement les caractères du flux d'entrée.
cin.get(a, n);
Dans ce scénario, get() continue l'extraction de caractères jusqu'à ce qu'il rencontre un caractère de nouvelle ligne (n) ou qu'il ait réussi à récupérer n- 1 caractères. Il ajoute ensuite automatiquement le caractère nul ( ) au tableau fourni.
Cette alternative offre un meilleur contrôle sur la saisie des caractères et permet la détection de caractères individuels, y compris les espaces. Pour plus d'informations, reportez-vous à la documentation officielle sur l'interface istream.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!