Trim Funktion für Char Array
-
Hi!
Im Microsoft Visual Studio gibt es eine Funktion trim() die einem Char-Array alle Leerzeichen etc. hinten und vorne entfernt. Ich suche für diese Funktion das äquivalent in Borland C++. Dort habe ich die Funktion Trim() gefunden, leider funktioniert diese Funktion nur mit AnsiStrings. Kennt jemand eine Funktion, die das auch mit Char-Arrays schafft?
SeboStone
-
Warum willst Du denn unbedingt char arrays benutzen??
-
Hallo,
char* my_trim(const char* str) { AnsiString sTmp = str; sTmp = Trim(sTmp); return sTmp.c_str(); }
MfG
tuküe
-
...und wir lesen sofort den FAQ-Beitrag zum Thema .c_str()...
-junix
-
Es scheint wohl wirklich keine Funktion dafür zu geben *mpf* Also werd' ich mich wohl auf die Antwort von tuküe stützen. Danke Dir!
Sebo
-
SeboStone,
SeboStone schrieb:
Also werd' ich mich wohl auf die Antwort von tuküe stützen.
stüzen ok, 1:1 übernehmen nicht, wenn Du eine Schutzverletzungs-freie Anwendung haben willst. junix' Beitrag sollte in diesem Zusammenhang als wildes Zaunpfahl-Gewinke interpretiert werden ...
-
Hallo,
ihr habt Recht. Hatte den Coden rein gefühlsmäßig ins Forum getippt. So wärs wohl besser:
void my_trim(char* str) { AnsiString sTmp = str; sTmp = sTmp.Trim(); strcpy(str, sTmp.c_str()); }
Mfg
tuküe
-
Jep, so hab' ich's auch gemacht.
-
Wobei noch 2 Fehler drin sind:
void trim(char *str) { AnsiString tmp = str; tmp = Trim(tmp); StrLCopy(str, tmp.c_str(), StrLen(tmp.c_str())); }
tmp.Trim(); funktioiert aus irgendeinem Grund nicht und der 3. Parameter für StrLCopy hat gefehlt.
SeboStone
-
Hallo,
ich nutze doch gar nicht StrLCopy() sondern strcpy() aus string.h. Das braucht nur 2 Parameter.
Und Trim() gibts auch noch als Memberfunktion von AnsiString.
AnsiString::Trim()
MfG
tuküe
-
Jep, gucken sollte man halt richtig, 'ne?! *mpf*