Forum: Mikrocontroller und Digitale Elektronik strrev()! funktioniert wie ?


von Peter (Gast)


Lesenswert?

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 .

von Lupin (Gast)


Lesenswert?

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.

von Andreas F. (aferber)


Lesenswert?

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

von Peter (Gast)


Lesenswert?

Perfekt ! funktioniert ! Vielen Dank :-)

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
Noch kein Account? Hier anmelden.