Dezimal -> Hex
-
Hallo,
ich benötige eine Funktion, der man eine dezimale Integerzahl übergibt, welche dann mit cout als Hex Zahl angezeigt werden soll. Diese Funktion muss sich aber an den Ansi c++ Standard halten, daher weiß ich nicht wie ich sie realisieren kann.
Hat vielleicht jemand eine Idee?MFG
Strater
-
Hi!
#include <iostream> using namespace std; int main() { cout << hex << 150 << endl; }
MfG Jester
-
Ich finde das die Frage langsam mal in die FAQ sollte, da sich in letzter Zeit die Anfragen danach häufen
@Jester:
es fehlt noch#include <iomanip>
-
k1ro schrieb:
Ich finde das die Frage langsam mal in die FAQ sollte, da sich in letzter Zeit die Anfragen danach häufen
@Jester:
es fehlt noch#include <iomanip>
Aber dann ne FAQ, die das ganze Konvertierungsthema mal abdeckt (hex->dez, dez->hex, hex->oct etc)
-
Also ich kann hex->dec und dec->hex erläutern und eine c++ Funktion dazu schreiben.
-
the_hero99 schrieb:
Also ich kann hex->dec und dec->hex erläutern und eine c++ Funktion dazu schreiben.
Ich glaub das kann hier so ziemlich jeder
-
Die Frage "Dezimal in Hexdezimal umwandeln" ist sowieso Müll. Wenn dann "Dezimal einlesen, den Wert dann als Hexadezimal ausgeben".
-
Es wurde ja angeboten nen FAQ Eintrag zu erstellen, und ich habe nur meine Hilfe angeboten.
Aber wurde abgelehnt.
-
interpreter und ich (und irgend so ein cracksüchtiger
sorry weiss den namen jetzt nicht mehr...
) haben das doch letztens erst wieder "gespielt"...
wie wärs mit dem eintrag in der FAQ
gibt zahl z mit der basis b aus 2<=b<=16
void int2basis(unsigned int z,unsigned int b){if(z){int2basis(z/b,b);printf("%c","0123456789abcdef"[z%b]);}}
-
cracksüchtiger...
christoph rackwitz heiß ichich hab so einen basenumwandlungsquatsch mal mit basic auf nem grafiktaschenrechner gemacht. ging von basis 2 bis 36 in allen richtungen, mit ganzzahl als zwischenschritt.
an deiner funktion sieht man es mal wieder: rekursion!
-
Windalf schrieb:
interpreter und ich (und irgend so ein cracksüchtiger
sorry weiss den namen jetzt nicht mehr...
) haben das doch letztens erst wieder "gespielt"...
wie wärs mit dem eintrag in der FAQ
gibt zahl z mit der basis b aus 2<=b<=16
void int2basis(unsigned int z,unsigned int b){if(z){int2basis(z/b,b);printf("%c","0123456789abcdef"[z%b]);}}
-
Hi!
Habe mir erlaubt die Funktion mal so umzuschreiben das diese einen String zurückliefert und nicht direkt ausgibt:
std::string int2base(unsigned int z,unsigned int b) { if(z) { std::string x("0123456789abcdef"); return int2base(z/b,b) + x[z%b]; } return ""; }
Code-Hacker