Leer-Zeichen aus String löschen...
-
Hab' (schon wieder mal) ein Problem! Wollte alle Leerzeichen aus einem String löschen! Mein Code:
string a; string b; cin >> a; b = a.replace(" ", "");Der Compiler (Borland C++ Builder 6) gibt mir aber eine Fehlermeldun aus (Hab' den Code übrigens geGooglet!): Keine Übereinstimmung für string::replace (car *, char
gefunden.Bin ich kurz vor der Lösung, oder sehr weit entfernt!? Bitte Helft mir!
Euer cpp_1
-
Hi, das geht mit string::replace nicht, der ist für andere Aufgaben da.
Benutze replace aus algorithm. Zudem nützt dir das nichts, da du mit op >> ( das bei cin
) nur bis zum ersten vorkommen eines Whitespaces ließt. Also würdest du niemals nen string mit Leerzeichen erhalten. Benutze stattdessen getline(cin, a);Edit: Du willst das ja auch noch in nem anderen string haben
dann benutze replace_copy und mache dich hier schlau: http://www.cplusplus.com/reference/
Bei Fragen einfach hier wieder melden ...
-
Da ich noch nicht sehr gut bin in C++, währe es nett von dir einen Code zu posten! (Vielleicht klingt das jetzt bescheuert, aber bei getline(....) werden, wenn ich dass ganze wieder mit cout ausgebe, auch Leerzeichen angezeigt!) Ich kenn mich nicht mehr aus!
-
KasF: replace(_copy_(if)) ersetzt ein element des containers mit einem anderen, hier gibt es aber kein "anderes" element, womit
' 'ersetzt werden kann.#include <string> #include <iostream> #include <algorithm> #include <iterator> using namespace std; int main( ) { string a; getline (cin, a); //string mit leerzeichen einlesen string b; remove_copy (a.begin(), a.end(), back_inserter(b), ' '); }
-
queer_boy schrieb:
hier gibt es aber kein "anderes" element
Stimmt, hast recht. Kann ja nicht 'Nicht' einfügen
