Char Array zu Byte Array
-
Hallo,
ich beschäftige mich zu Zeit mit der Umwandlung von Text in 7 Bit codierte Nachrichten.Funktioniert auch einwandfrei.
Mein Problem:Der convertierte Text wird in einem Char Array gespeichert.
Wie kann ich diesen jetzt in einen Byte Array verwandeln?!!Beispiel:
Klartext: text
7 Bit Codiert: F4F29C0E
Was-ich-will: {0xF4, 0xF2, 9C, 0E}kann mir da einer helfen?
Bitte?PS: Nutze Eclipse und C
-
Ich verstehe deine Frage nicht.
Wertebereiche der Typen sind:
char: -128...127
unsigned char: 0...255
-
Ich will den String quasi alle 2 Zeiche splitten.
Hier: F4 F2 9C 0E
und diese, ja noch als Ascii Zeichen genauso als Hexadezimal.
Ascii F4 => Hex F4Hoffe jetzt ist es verständlicher
PS: Danke für die Super schnelle Antwort!!
-
Chriss612 schrieb:
Der convertierte Text wird in einem Char Array gespeichert.
Wie kann ich diesen jetzt in einen Byte Array verwandeln?!!ein char ist meistens ein byte, mit einem char array hast du also auch gleich ein byte array.
-
Hab mich vllt falsch ausgedrückt.
Ich muss den convertierten Text als befehl ans ein Mobiltelefon senden
Dies muss im Hexadezimal geschehen.muss also anstelle des
Strings "F4F29C0E"
0xF4 0xF2 0x9C 0x0E
hinschicken.
-
Du brauchst nichts zu konvertieren:
void sendeByte(unsigned char b) { __lib_sendebyte2telefon(b); } char *text="foobar"; while( *text ) sendeByte(*text++);
-
Hab mal eben sowas gefunden:
sscanf(str, "%x", &nResult);
Ich hoffe, ich hab dich richtig verstanden: du hast also einen String wie "F4A611" und möchtest daraus ein Byte-Array wie {0xF4, 0xA6, 0x11} machen. Die Funktion oben kann dir aber nur 0xF4A611 liefern. Wenn du tatsächlich ein Array haben willst, musst du das schon selbst umsetzen. Das sollte ja möglich sein, nen bissl shiften, nen bissl ASCII-Codes, und so weiter...
-
Heimelchen schrieb:
Hab mal eben sowas gefunden:
sscanf(str, "%x", &nResult);
Ich hoffe, ich hab dich richtig verstanden: du hast also einen String wie "F4A611" und möchtest daraus ein Byte-Array wie {0xF4, 0xA6, 0x11} machen.
Bingo! Genau das will ich!!
Aber verstehe irendwie nicht wie ich einen sollchen Array füllen kann : (
-
Chriss612 schrieb:
Ich muss den convertierten Text als befehl ans ein Mobiltelefon senden
zeig mal die deklaration der funktion, die das macht.
-
Wie füllen? Ich denke, das mach sscanf für dich.
-
Chriss612 schrieb:
Bingo! Genau das will ich!!
Aber verstehe irendwie nicht wie ich einen sollchen Array füllen kann : (Machst du ein Array mit malloc. Dann liest du die Werte aus der Zeichenkette, rechnest sie um und speicherst sie in dem Array.