Trennen Sie durch Kommas getrennte Zeichenfolgen mithilfe von Stringstream
Dieser Artikel befasst sich mit dem Problem der Trennung von durch Kommas getrennten Zeichenfolgen mithilfe eines Stringstreams. Der vom Benutzer bereitgestellte Originalcode versuchte, den Operator zum Teilen der Zeichenfolge zu verwenden, funktionierte jedoch nur bei Leerzeichen, nicht bei Kommas.
Um diese Einschränkung zu überwinden, verwendet die Lösung die Klasse istringstream und die Funktion getline. Hier ist der überarbeitete Code:
#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; }
In diesem Code wird die getline-Funktion verwendet, um jedes Token aus dem Stringstream zu extrahieren. Es benötigt drei Argumente: den Eingabestream, das Token und das Trennzeichen (in diesem Fall ein Komma). Das Token wird dann auf der Konsole ausgegeben.
Wenn Sie diesen Code ausführen, wird die folgende Ausgabe erzeugt:
abc def ghi
Dieser überarbeitete Code trennt die Zeichenfolge erfolgreich anhand von Kommas und stellt die bereit gewünschte Ausgabe.
Das obige ist der detaillierte Inhalt vonWie kann ich mit Stringstream eine durch Kommas getrennte Zeichenfolge in C aufteilen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!