Séparer les chaînes séparées par des virgules à l'aide de Stringstream
Cet article aborde le problème de la séparation des chaînes délimitées par des virgules à l'aide d'un stringstream. Le code original fourni par l'utilisateur tentait d'utiliser l'opérateur pour diviser la chaîne, mais cela ne fonctionnait que pour les espaces, pas pour les virgules.
Pour surmonter cette limitation, la solution utilise la classe istringstream et la fonction getline. Voici le code révisé :
#include <iostream> #include <sstream> int main() { std::string input = "abc,def,ghi"; std::istringstream ss(input); std::string token; while (std::getline(ss, token, ',')) { std::cout << token << '\n'; } return 0; }
Dans ce code, la fonction getline est utilisée pour extraire chaque jeton du stringstream. Il prend trois arguments : le flux d'entrée, le jeton et le délimiteur (dans ce cas, une virgule). Le jeton est ensuite imprimé sur la console.
Lorsque vous exécutez ce code, il produira le résultat suivant :
abc def ghi
Ce code révisé sépare avec succès la chaîne en fonction de virgules et fournit le résultat souhaité.
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!