Voici un exemple de programme utilisant stringstream. L'objectif est d'accepter les lignes de l'utilisateur (entrée standard) et d'imprimer chaque mot sur une ligne distincte.Est-il possible d'accepter de l'utilisateur (entrée standard) au flux de chaîne directement?
int main()
{
std::istringstream currentline;
std::string eachword;
std::string line;
// Accept line from the standard input till EOF is reached
while (std::getline(std::cin,line))
{
currentline.str(line); // Convert the input to stringstream
while (currentline >> eachword) // Convert from the entire line to individual word
{
std::cout << eachword << std::endl;
}
currentline.clear();
}
return 0;
}
Je me demande, est-il possible, je peux éviter la variable de chaîne intermédiaire (objet), la ligne et stocke directement l'entrée d'utilisateur à la CurrentLine (objet istringstream).
Note:
Je sais, la solution suivante déjà.
while (std::cin >> eachword)
{
std::cout << eachword << std::endl;
}
Pourquoi ne pas simplement utiliser la deuxième solution? –
Neil, c'est-ce que je compte faire. – user373215