String ersetzen Funktion
-
Hallo Leute,
gibt es in C++ eine Funktion die in Chararrays bestimmte Zeichenfolgen durch andere ersetzt oder muss man die sich selberproggen? -> Codeschnipsel wäre nett
Bei mir sollen alle Zeilenumbrüche entfernt werden...Ich hab schon in der MSDN gesucht, dort habe ich allerdings nicht gefunden.
MFG, Rodney
-
ich wüsste net was daran schwer is...
einfach in ner for-schleife das array durchlaufen und falls das aktuelle element \n ist, einfach durch n leerzeichen oder so ersetzen ...
oder hab ich das falsch verstanden?
-
[edit]Kleiner Denkfehler[/edit]
Nicht nur auf Carriage Return, sondern auch auf LineFeeds achten unter Win/Mac('\r').
mfg
-
für sowas gibt es strings, da kannste die einzelnen zeichen ganz rauslöschen.
-
Jo, da gabs vor kurzem einen Beitrag zu:
http://www.c-plusplus.net/forum/viewtopic.php?t=71496Vielleicht hilfts dir ja....
-
ok, darauf hätte ich ja auch kommen können
Allerdings habe ich ein Prob beim überprüfen des Strings
for (int j=0;j<100;j++) { // Zeilenumbrüche entfernen if (Puffer[j] == "\n") Puffer[j] == ""; if (Puffer[j] == "\r") Puffer[j] == ""; }
in einer Forschleife wird also jedes Zeichen nach \n durchsucht, er meldet aber immer
D:\Programmierung\Geproggtes\Vokabelprog\main.cpp(182) : error C2446: '==' : Keine Konvertierung von 'char *' in 'int'
Diese Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat
D:\Programmierung\Geproggtes\Vokabelprog\main.cpp(182) : error C2040: '==' : 'int' unterscheidet sich von 'char [2]' in bezug auf die Anzahl vorgenommener Dereferenzierungen
D:\Programmierung\Geproggtes\Vokabelprog\main.cpp(182) : error C2446: '==' : Keine Konvertierung von 'char *' in 'int'
Diese Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat
D:\Programmierung\Geproggtes\Vokabelprog\main.cpp(182) : error C2040: '==' : 'int' unterscheidet sich von 'char [1]' in bezug auf die Anzahl vorgenommener Dereferenzierungen
D:\Programmierung\Geproggtes\Vokabelprog\main.cpp(182) : warning C4553: '==' : Operator hat keine Auswirkungen; ist '=' beabsichtigt?
D:\Programmierung\Geproggtes\Vokabelprog\main.cpp(183) : error C2446: '==' : Keine Konvertierung von 'char *' in 'int'
Diese Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat
D:\Programmierung\Geproggtes\Vokabelprog\main.cpp(183) : error C2040: '==' : 'int' unterscheidet sich von 'char [2]' in bezug auf die Anzahl vorgenommener Dereferenzierungen
D:\Programmierung\Geproggtes\Vokabelprog\main.cpp(183) : error C2446: '==' : Keine Konvertierung von 'char *' in 'int'
Diese Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat
D:\Programmierung\Geproggtes\Vokabelprog\main.cpp(183) : error C2040: '==' : 'int' unterscheidet sich von 'char [1]' in bezug auf die Anzahl vorgenommener Dereferenzierungen
D:\Programmierung\Geproggtes\Vokabelprog\main.cpp(183) : warning C4553: '==' : Operator hat keine Auswirkungen; ist '=' beabsichtigt?Wie kann ich den ein einzelnes Zeichen sonst auf \n überprüfen? Bzw. welchen Wert hat \n und \n im Zeichensatz
MFG; Rodney
-
Du solltest keine Zeichen mit char * vergleichen, schreib statt "" ''