Mon code doit identifier les caractères espaces en utilisant cin, donc quand j'utilise l'espace comme entrée, il doit identifier l'espace. Comment puis-je faire cela?Identification des espaces blancs en C++
Répondre
Utilisez cin.getline pour lire la ligne avec l'espace.
http://www.cplusplus.com/reference/iostream/istream/getline/
Mieux vaut utiliser la fonction free que la méthode si vous n'avez pas vraiment besoin d'utiliser des tampons char * bruts: http://www.cplusplus.com/reference/string/getline/ – sth
string str;
getline(cin, str); // get the whole line
Si vous voulez traiter c-strings, vous pouvez utiliser le dessus cin.getline(....)
qui est différent des chaînes getline
.
Cin casse sur les espaces, de toute nature. Si vous avez besoin de lire une ligne complète, vous devez utiliser la fonction de ligne get:
getline(cin, line);
Où ligne est un std :: string. Cela coupera toujours toutes les nouvelles lignes ou retours de chariot.
Pour tester la chaîne d'espaces, examinez chaque caractère de la chaîne et comparez-le au caractère espace "". Il ne reste comme un exercice pour le lecteur;)
Pas 100% correct. Vous pouvez obtenir que les opérateurs de flux n'ignorent pas l'espace avec std :: noskipws. Mais std :: getline() est la solution la plus facile à utiliser. –
Vous pouvez utiliser std::noskipws
pour désactiver les espaces blancs que sauter std::cin
fait par défaut:
#include <iostream>
#include <iomanip>
int main() {
char c;
std::cin >> std::noskipws;
while (std::cin >> c) {
if (c == ' ')
std::cout << "A space!" << std::endl;
}
return 0;
}
Il y a plus de caractères qui sont __ "Espace blanc" __ –
Je ne pouvais pas être plus d'accord avec Martin. Pourquoi ne pas utiliser 'std :: isspace()' à la place? – sbi
La question mentionne "espace" ainsi que "espace" et n'est pas très clair sur les détails de ce qui doit être fait avec. Seul l'OP sait exactement ce qu'il veut faire à l'intérieur de la boucle, le point principal que je voulais faire était que vous pouvez désactiver le saut d'espace avec 'noskipws'. Ce que vous en faites ensuite dépend du problème spécifique que vous essayez de résoudre. – sth
- 1. Ignorer les espaces blancs
- 2. construire des listes d'arguments contenant des espaces blancs
- 3. Preserving « espaces blancs » tags à l'intérieur
- 4. Pour filtrer les espaces blancs en images dans LATEX
- 5. Oracle - comment supprimer les espaces blancs?
- 6. espaces blancs Version du milieu de chaîne
- 7. Comment modifier les paramètres des espaces blancs de Visual Studio?
- 8. Supprimer le fichier avec des espaces blancs sur son nom
- 9. Convertir la colonne nchar en espaces blancs nvarchar et Trim
- 10. Comment puis-je diviser une chaîne en rubis maintien des espaces blancs dans la division
- 11. Afficher QUELQUES caractères invisibles/espaces blancs dans Eclipse
- 12. XSL disable-output-escaping supprime les espaces blancs
- 13. Comment appeler WSDL2JAVA de fourmi avec des espaces blancs dans mon chemin
- 14. Identification des blocs identiques du code
- 15. Comment importer un fichier texte délimité par des espaces blancs dans MySQL?
- 16. Zend Framework élément d'entrée de formulaire HTML avec des espaces blancs
- 17. Identification des exceptions en double pour le suivi des bogues
- 18. Comment désérialiser des espaces de noms XML en C# (System.Xml.Serialization)?
- 19. Chemins avec espaces blancs dans ido (find-file) (sur MS Windows)
- 20. Supprimer les arrière-plans blancs des images
- 21. Espaces de noms cycliques en C#
- 22. C# printformat espaces réservés
- 23. Comment faire pour supprimer des espaces à partir d'un XmlDocument
- 24. Normalisation des espaces dans les atomes Prolog
- 25. Comment créer des éléments UIToolbar non blancs?
- 26. cvs checkin: Identification des noms des fichiers archivés
- 27. Identification des références de service Web ASP.NET
- 28. PHP: Supprimer les caractères non imprimables sans enlever les espaces blancs
- 29. Identification des tests à exécution lente
- 30. iPhone: Suivi/Identification des touches individuelles
Que voulez-vous dire que vous devez les identifier? Qu'est-ce que tu attends exactement? –