Ich versuche gerade die scheinbar nicht sehr bekannte Funktion strrev() zu nutzen um meinen String umzudrehen . Leider will das nicht so recht funktionieren . Hier mal in kurzform meine Variable und meine Aufruf . ---------------------------------------------------------------------- char Zeichen[10]; Zeichen[0] = '\0'; ---------------------------------------------------------------------- // Zeichen wird dann z.B. im Laufe des Programms mit "Hallo" gefüllt Zeichen = strrev(Zeichen); // jetzt sollte Zeichen --> "ollaH" sein . --------------------------------------------------------------------- Der Compiler meldet sich dann mit incompatible types in assignment of char* to char[10] Leider kann ich sonst auch nirgendwo wirklich viel zu dieser Funktion finden zumal sie wohl nicht in jedem Compiler verfügbar ist. Kann mir hier vielleicht eben jemand helfen der das schonmal gemacht hat ? . Eine Schleife zum umdrehen will ich nicht nutzen wo es doch diese schöne strrev Funktion gibt .
char* pZeichen; char Zeichen[10]; Zeichen[0] = '\0'; // Zeichen wird dann z.B. im Laufe des Programms mit "Hallo" gefüllt pZeichen = strrev(Zeichen); so würde es gehen. du kannst dann mit pZeichen weiter arbeiten.
Schau dir die Doku nochmal genau an. strrev() arbeitet "in place", d.h. der Input-String wird direkt verändert. Der Rückgabewert ist einfach der unveränderte Parameter, kann also ignoriert werden. Ergo einfach nur:
1 | strrev(Zeichen); |
Dass die Funktion nicht sonderlich bekannt ist könnte dadran liegen, dass sie keine Standardfunktion (insbesondere keine C-Standardfunktion) ist, sondern zur publib-Library von Lars Wirzenius gehört. Andreas
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.