Hallo,
Man kann doch in einem character array in C im Initialisierungs-String
Zeichen als hexadezimalen Wert angeben, so wie im Betreff. Also mit
\xhh, vobei hh die Hexadezimalziffern sind.
Nach meinem Wissen sollte der Compiler aus:
1 | const char []="\x01Auto";
|
folgende Bytefolge im Speicher machen (hex):
01 41 75 74 6F 00
Bei mir tut er es aber nicht. Bei mir interpretiert er immer das 'A',
welches auch eine hex-Ziffer sein könnte, als solche und macht aus \x01A
0x1A
also:
1A 75 74 6F 00
Wie kann ich das verhinder, bzw. wieso ist das überhaupt so, denn ein
char-Zeichen kann ja nur aus maximal zwei hex-Ziffern bestehen.
Ich verwende den arm-gcc. Die Version weiß ich gerade nicht, da muss ich
morgen nochmal nachschauen.
VDumfG
hahgeh