Datentyp für eine Hex Zahl



  • Hallo Forum ich bin ziehmlich neu und habe mir gerade die Daten typen angeschaut was mir aufgefallen ist ist das es garkein Datentyp für Zahen+Buchstaben gibt.
    zb eine Hex Zahl: zb 0x1AF81S
    Wie könnte ich diese mit cin>> eingeben.
    Das sie in einer Variable gespeichert wird.
    Ich habe nix gefunden wie man zahlen und buchstaben in 1 Datentyp packen kann und habe schon rumprobiert.
    Würde mich über Antworten sehr freuen. 😃
    Edit1:Ich hoffe ich habe es in den richte Themen bereich gepostet!


  • Mod

    Unterscheide Daten und Darstellung! Der Datentyp ist immer noch Zahl, genauer Ganzzahl, also einer der int-Datentypen. Welcher genau, kommt auf den Bereich an.

    Das Umwandeln einer Darstellung in einen Wert geht dann wie gewohnt mit dem Streamoperator. Du musst bloß dem Stream vorher mit dem Manipulator hex sagen, dass er auch Hexadezimal lesen soll:
    http://www.cplusplus.com/reference/ios/hex/

    Möchtest du hingegen tatsächlich die Darstellung speichern, also die Zeichenfolge "0x1AF81S" ('S' passt da nicht rein!), dann ist das eine Zeichenfolge, also std::string.
    Wenn du ganz extravagant werden möchtest, dann kannst du dir auch noch einen speziellen String schreiben, der nur gültige Hexadezimaldarstellungen speichern kann. Das darfst du dann selber machen, denn du dürftest so ziemlich der erste Mensch auf der Welt sein, der das braucht.


Log in to reply