Gast
#890859
hallo Leute, ich versuche ein Char Zahl in uint_16 zu konvertieren. ZB char zahl1[4]="7FF", uint16_t zahl2; zahl2=atoi(zahl1); ich bekomme zahl2=7; Weiss jemanden wo das Problem liegt? Danke
|
Anzeige
|
convert char in int
Gast
#890859
hallo Leute, ich versuche ein Char Zahl in uint_16 zu konvertieren. ZB char zahl1[4]="7FF", uint16_t zahl2; zahl2=atoi(zahl1); ich bekomme zahl2=7; Weiss jemanden wo das Problem liegt? Danke Wenn du einen Hex-String in eine Zahl umwandeln willst, such mal nach strotul(). atoi() wandelt dezimal und stört sich folglich am "F".
Gast
#890869
ich verstehe nicht, wie benutze ich ich die beide Funktionen? Du brauchst nicht beide Funktionen. Nur strtoul brauchst du. Und wie man strtoul benutzt, steht im Handbuch deiner C-Toolchain oder irgendwo in der Warmen Weiten Wildnis, wo es darauf harrt von Google gefunden zu werden. Aufruf z.B. #include <stdlib.h> char zahl1[4]="7FF"; uint16_t zahl2; zahl2 = (uint16_t) strtoul(zahl1, (void *) 0, 16); Die Kollegen von strtoul für andere Typen als unsigned long int heissen strtod() und strtol()
Gast
#890921
ich danke Dir, es klappt wunderbar Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|