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'); oder putchar(65); (bei ASCII) schreibst ist doch egal.

    Du musst allerdings bedenken, dass Arrays in C anders behandelt werden.


Anmelden zum Antworten