ma question est un peu étrange, mais comment est-il possible de lire une chaîne de caractères à partir du clavier omble chevalier par char sans utiliser scanf()
et getchar()
seulement en utilisant operator<<
, par exemple, je veux changer chaque lettre a
que je lire par *
merci d'avancelecture omble chevalier par char
0
A
Répondre
2
char c;
std::string output;
while(std::cin >> c)
{
if(c == 'a')
c = '*';
output += c;
}
0
Essayez d'écrire sur un type de caractère.
char cReadFromStream;
stream >> cReadFromStream;
0
Vous ne pouvez pas. operator <<
uses cooked inputs.
Cependant, si vous avez vraiment voulu dire que vous êtes à la recherche d'une solution en utilisant C++ iostreams et non des fonctions C stdio, utilisez cin.get()
qui est le C++ iostreams équivalent à getchar
.
1
Selon vos besoins, vous pouvez le trouver approprié de le faire:
#include <iostream>
#include <iomanip>
char c;
std::cin >> std::noskipws;
while (std::cin >> c)
std::cout << c == 'a' ? '*' : c;
Voir http://www.cplusplus.com/reference/iostream/manipulators/noskipws/ pour plus de détails noskipws, ce qui est essentiel sinon l'opérateur >> permet de sauter des espaces, des onglets et des sauts de ligne jusqu'à ce que il trouve d'autres caractères à mettre en 'c', ce qui entraîne la suppression de tous les caractères d'espaces blancs mentionnés ci-dessus.
Questions connexes
- 1. changement étrange * omble chevalier sqlite3_step (déclaration)
- 2. Retirez un omble chevalier d'une chaîne
- 3. Comment retourner l'indice de ascii omble chevalier en C
- 4. imprimer dernière '\ n' omble chevalier en utilisant la méthode d'impression en python
- 5. allouée dynamiquement omble
- 6. Redirection .NET IO - lecture de sortie char par char
- 7. Réécrire cette expression rationnelle que lorsque les autres omble chevalier est présent
- 8. Segmentation fault - pointeur omble
- 9. prologue, attaque de chevalier
- 10. omble sed et spécial
- 11. recherche par mot clé de texte dans 200 ou d'un champ de texte afin omble chevalier sur la base de données
- 12. par gamme substring char
- 13. Remplacer CHAR par VARCHAR2
- 14. Comment changer la valeur HEX à EBCDIC omble
- 15. pourquoi Request.QueryString remplacer + avec char vide dans certains cas?
- 16. Regroupement par la dernière Char
- 17. Lecture GZIPInputStream ligne par ligne
- 18. Aide de l'algorithme du Tour du Chevalier
- 19. lecture d'un fichier ligne par ligne
- 20. lecture xmldata par analyseur
- 21. convertir char ** en char * ou char
- 22. Suppression du tableau char retourné par getenv()
- 23. Remplacer le nième char par sed
- 24. paramètre ASP.NET MVC Route séparée par « : » char
- 25. RBuf8 char * dans Symbian C++
- 26. liste de liste char -> bool
- 27. Conversion à court de char, résultats impairs?
- 28. Comment analyser un fichier ligne par ligne, char par caractère en Python?
- 29. c scinder un char * en un char **
- 30. Lecture POSIX standard masquée par une méthode de lecture avec une signature différente
La méthode 'push_back()' peut être remplacée par une concaténation: 'output + = c;'. Cela peut être plus naturel car c'est un append. –
Bon appel. Je suis resté coincé en terre C trop longtemps. –