sscanf leichte Frage
-
Hi,
hätte ne leichte Frage für euch an der ich jetzt schon länger sitze:
ich habe mit getline eine Zeile in einen String-Vektor gespeichert, dieser String heißt line und ich möchte die Zahl in den Anführungszeichen in einen Vektor namens veckp schreiben. Die zeile lautet:exprs=["1";"1+s"],..
und mein Vorschlag dazu (der leider nicht funzt):
vector<string>veckp;
sscanf(line, " exprs=['%c';'1+s'],..", veckp[1]);Bitte helft mir kurz, ich komm nicht drauf...
Mfg Tom
-
Why the fuck sscanf? o0
-
Ich dachte wenn ich nen String abscannen will bracuh ich das
-
TomBb schrieb:
Ich dachte wenn ich nen String abscannen will bracuh ich das
Eher nicht. String unterstützt die gleichen Formen von Ein-/Ausgabe wie alle nativen Datentypen in C++. Mehr noch: Es gibt eine praktische Funktion namens getline die einen Stream und einen String annimmt und dann eine Zeile aus dem Stream in den String liest.
-
fscanf funktioniert aber leider auch nicht, falls du das meintest...
Bitte erbarmt sich einer!

-
Mit getline hab ich ja die Zeile schon in einem String-Vektor gespeichert.
ich brauche aus diesem String namens line nur noch den Zahlenwert der in den Anführungsstrichen steht..
-
Dann schreib einen Lexer bzw. Parser dafür. Geht sogar schon mit den Iteratoren.
-
Zeile mit std::getline in einen std::string einlesen und einfach die Funktion substr zum Ausschneiden nutzen.