Heximal zu Dezimal umwandeln

untread

Erfahrenes Mitglied
Hallo,

eine Dezimal in eine Hex Zahl umzuwandeln funktioniert, jedoch wies umgekehrt funktionert ist mir nicht ganz klar...

Hier mal der Code für Dez->Hex

Code:
void CDezToHexDlg::OnButton2() 
{	
	UpdateData(TRUE);
	
	int myint;
	char mystring[20]; 

	sscanf(m_dez,"%i",&myint);	
	itoa(myint,mystring,16); //in Hex umwandeln (16--> Hex);
	m_hex = mystring;

	UpdateData(FALSE);
}


WIe muss ich das jetzt umschrieben das er mir aus dem Hex Wert nehmen wir mal an ich geb in das Eingabefeld 'FF' ein , jetzt sollte im Dezimal Feld eine Integer zahl ausgegeben werden.

sscanf müsst ich ja folgendermaßen umschreiben
sscanf(m_hex,"%X",&mystring);
dann eigentlich myint = atoi(mystring);
und die ausgabe m_dez.Format("%i",myint);

gibt er mir für myint leider nur ne "0" aus.
 
Moin moin,

da Hex nur ne Sicht für Integer ist müsste folgendes klappen:

Code:
int Zahl = 255;
int Hexgelesen;
int Intgelesen;

char Hexgeschrieben[20];
char Intgeschreiben[20];

ZeroMemory(Hexgeschrieben,sizeof(char)*20);
ZeroMemory(Intgeschrieben,sizeof(char)*20);

sprintf(Hexgechrieben,"%X",Zahl);
sprintf(Intgechrieben,"%d",Zahl);

sscanf(Hexgeschrieben,"%X",&Hexgelesen);
sscanf(Intgeschrieben,"%d",&Intgelesen);

Hoffe ich mich nicht vertippt;)

Gruss Michael
 
Auch wenn der Thread schon älter ist:

Würde auch folgendes Beispiel Programm funktioneiren?

Code:
#include <iostream>
using namespace std;

int main()
{
	int number;

	cout<<"Gib eine Nummer ein. Diese wird dann in Hex umgewandelt!\n";
	cin>>number;
	cout<<"Die nummer ist: "
	<< hex << number << endl;
	cin.get();
	cin.get();
}

Ja es ist ein einfaches Übungsprogramm aber es gibt die Zahl in Hexadezimal aus aber was ist der unterschied zu den anderen?
Bin gerade am lernen und das ist mein Stolz :D.
 
Zurück