Hex in Dez Umrechnung
-
Hallo bin Programmierneuling und hab folgende Aufgabe,
Ich soll eine Hex Ziffer in Dez umrechnen lassen, die Abfrage soll mit getch geschehen.
Funktionen aus <ctype.h> und <string.h> darf ich nicht verwenden.
Mein erster Lösungsansatz war das ganze mit einer switch Anweisung zu lösen:
sprich ich hab einfach für jede mögliche eingabe ein Case erstellt. Ist natürlich denkbar unelegant.
Habt ihr vll Ansätze wie ich es eleganter lösen könnte ? Bitte kein Kompletten Quellcode posten will erstmal schauen ob ich mit ein wenig Starthilfe nicht selbst drauf komme.
Vielen Dank
-
Hi
mit sscanf kannst du konvertieren, sscanf ist in stdio.h
-
aber wenn ich mit getch die Hex Ziffer einlesen soll ?
-
Na und? Kannst du doch in ein char Array einlesen.
Oder quasi 'per Hand' coden, für Ziffernhex A - F:
int hex = 'F'; int dec; if ( hex >= 'A' && hex <= 'F' ) dec = hex - 'A' + 10;
-
Wie kommt man auf -'A'. Sorry sind sicherlich dumme fragen aber bin absoluter Beginner.
-
Weil C keinen Unterschied zwischen Ganzzahlen und Zeichen macht.
char ist ein Datentyp für kleine Zahlen, die für die Darstellung von einem Zeichen ausreichen.Ob du
putchar('A');
oderputchar(65);
(bei ASCII) schreibst ist doch egal.Du musst allerdings bedenken, dass Arrays in C anders behandelt werden.