Durch Kommas getrennte Zeichenfolgen mithilfe eines Stringstreams trennen
In C ist ein Stringstream ein Stream, der ein String-Objekt bearbeitet. Es kann zum Lesen oder Schreiben in einen String verwendet werden. Ein häufiger Anwendungsfall eines Stringstreams ist das Aufteilen eines Strings in Token.
Verwenden von Stringstream zum Trennen von Strings durch Kommas
Die Standard-Stringstream-Operatoren, wie z. B. > > Operator, kann verwendet werden, um Zeichenfolgen durch Leerzeichen zu trennen. Es kann jedoch nicht zum Trennen von Zeichenfolgen durch andere Trennzeichen wie Kommas verwendet werden. Um diese Einschränkung zu überwinden, kann ein alternativer Ansatz verwendet werden.
Die Funktion getline() der Klasse istringstream kann verwendet werden, um eine Zeile aus dem Stringstream zu lesen, bis ein Trennzeichen gefunden wird. Durch die Angabe eines Kommas (',') als Trennzeichen in der Funktion getline() ist es möglich, die Eingabezeichenfolge in durch Kommas getrennte Token aufzuteilen.
Beispiel
Der folgende Code zeigt, wie ein Stringstream verwendet wird, um durch Kommas getrennte Zeichenfolgen zu trennen:
#include <iostream> #include <sstream> std::string input = "abc,def,ghi"; std::istringstream ss(input); std::string token; while(std::getline(ss, token, ',')) { std::cout << token << '\n'; }
Dieser Code erzeugt die folgende Ausgabe:
abc def ghi
Die Verwendung der getline()-Funktion mit einem angegebenen Trennzeichen bietet eine bequeme Möglichkeit, durch Kommas getrennte Zeichenfolgen mithilfe eines Stringstreams in einzelne Token aufzuteilen.
Das obige ist der detaillierte Inhalt vonWie kann ich Stringstream verwenden, um durch Kommas getrennte Zeichenfolgen in C aufzuteilen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!