Forum: Compiler & IDEs Cast Hex in char


von Peter (Gast)


Lesenswert?

Hallo!
Ich versuch mit dem avr-gcc einen hex-Wert in einen char zu 
konvertieren.
Hab's mit c=(char)0x01; versucht.
Klappt aber nicht.
Was mach ich falsch?

von Johannes M. (johnny-m)


Lesenswert?

Was soll der cast? 0x01 passt auch ohne einen cast in einen 8-Bit-char.

Oh oh, ich glaube da schwant mir was...
Willst Du die Zahl in einen ASCII-Character umwandeln? Da hilft Dir 
ein cast überhaupt nicht, weil es keinen Datentyp "ASCII-Zeichen" gibt. 
Datentypen in C sind ausnahmslos einfach nur Zahlen, ob hex, dezimal 
oder binär... Auch ASCII-Codes sind nichts anderes als Zahlen. Der 
Datentyp char ist lediglich ein 8-Bit-Wert und heißt nur so, weil er 
meistens für Textzeichen verwendet wird. Den entsprechenden Code 
hineinschreiben musst Du aber selber...

Am besten beschreibst Du mal genau, was Du wirklich willst... Und wenn 
ich mit obigem richtig liegen sollte, dann schau Dir mal eine 
ASCII-Tabelle an (Google ist Dein Freund).

von Rolf Magnus (Gast)


Lesenswert?

> Willst Du die Zahl in einen ASCII-Character umwandeln?

In diesem Fall tut's ein
[C]
 c='1';
[C/]

von Lötlackl (Gast)


Lesenswert?

bzw.

siehe auch hier:AVR-GCC-Tutorial 
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial
Abschnitt:Schreiben von Variableninhalten

mfg Lötlackl

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.