char in hex konvertieren und zurück
-
-> Wie kann ich z.B. den char 'p' in 70h konvertieren?
-> Wie kann ich z.B. 70h zurück in 'p' konvertieren?Danke für alle Antworten!
-
Neben denn 77 anderen Möglichkeiten geht's auch so:
#include <stdio.h> int main(void) { char p = 'p'; char hex[10]; int i; sprintf(hex, "%x", p); printf("hex: %s\n", hex); sscanf(hex, "%x", &i); printf("int: %d\n", i); return 0; }
-
if ('p' == 0x70) puts("Schwein gehabt."); else press_big_red_button();
Da haben wir ja nochmal Glück gehabt (auf ASCII Maschinen jedenfalls ;))
-
Daaaaanke.
...Du hast soeben eine offizielle besondere Lernleistung unterstützt.
-
hm
mady schrieb:
#include <stdio.h> int main(void) { char p = 'p'; char hex[10]; int i; sprintf(hex, "%x", p); printf("hex: %s\n", hex); sscanf(hex, "%x", &i); printf("int: %d\n", i); return 0; }
is das nur der code für char in hex oder auch die andere richtung?
sry hab kA von hex, bräuchte aber nen code wie ich die hier:unsigned char tx_char[12]=""; uint16_t adc_input = 0; uint16_t adc_input2 = 0 int main(void) { ADC_Init(); while (true) { adc_input = ADC_Read(Kanal0); adc_input2 = ADC_Read(Kanal1); sprintf(tx_char,"%i-%i",adc_input,adc_input2); } }
erstellten char werte wieder einzeln als hex werte hab
brauche das vorher als char weil ichs über funk sende
nachm senden will ichs aber in nen dac(pwm code) füttern, der aber hex als vergleichswert braucht
danke schon mal
mfg
-
Probier es doch aus.
Du musst Unterscheiden zwischen einem Byte mit dem Wert 112 und dem Text "112"
"112" besteht aus drei Zeichen '1' '1' und '2'. Die Zeichen sind nötig damit der Mensch den Wert lesen kann. Der Computer braucht diesen Umweg nicht.
Man kann den Wert 112 auch als 'p' oder 0x70 darstellen.Ein char ist nicht unbedingt ein Buchstabe sondern ein Speicherplatz der groß genug für das Alphabet und noch ein paar Zeichen ist. Im Allgemeinen 1 Byte
Hexzahlen werden gerne in Datenblättern benutzt um die Werte für den Menschen verständlich darzustellen.
Prüfe daher mal ob es wirklich nur druckbare Zeichen bei der Übertragung sein dürfen und ob der DAC wirklich Hexzahlen braucht.