String aufteilen
-
Moin moin!
Ich bräuchte mal eure hilfe bei einem problem das ich einfach nicht gelöst bekomme.
Ich möchte einen String der jetzt zb. ein Satz ist aufteilen. Zb. das die einzelnen wörter in diesen Satz string in verschiedene strings kopiert werden.
Doch mit meinem Code ansatz klappt es nicht.
int main() { char satz[100]; char wort[100]; char *ptr; printf("Eingabe: "); fgets(satz, sizeof(satz), stdin); ptr = satz; while(*ptr != ' ') { strcpy(wort,ptr); ptr++; } printf("Ausgabe Variable-satz: %s",satz); printf("Ausgabe Variable-wort: %s\n",wort); system("Pause"); return 0; }bitte helft mir
!!!
-
Ich würde in C++ lieber mit std::string arbeiten - da kannst du mit find() nach deinem Trennzeichen suchen und mit substr() die einzelnen Teilworte rausfiltern. Wenn du unbedingt mit C-String's arbeiten willst, empfehle ich dir einen Blick auf strtok().
PS: Und natürlich reicht du zum Unterbringen einer kompletten String-Serie kein eindimensionales char-Array, dafür nimmst du besser einen vector oder zumindest ein mehrdimensionales Array.