Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » dez in hex

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
03.06.2004, 10:35 Uhr
~Matthias
Gast


Hallo!
Ich hab folgendes Problem:

Ich möchte eine dezimale Zahl vom Typ integer in eine hexadezimale Zahl umwandeln und als char speichern.

z.B.
int zahldez;
zahldez=227;

umwandeln in hex und in

char zahlhex[2] speichern.

also:
zahlhex[0]=0xE3;

Vielen Dank für Eure Hilfe!

Matthias
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
03.06.2004, 12:52 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)



C++:
int main(){
int zahldez;
zahldez=227;
printf("%x",zahldez);
}



wenn du es in einen string schreiben willst einfach sprintf analog verwenden...
allerdings muss ein char-array immer nurterminiert sein.. in deinem fall heisst das wenn du eine zweistellige hexzahl in dein char-array ballern willst muss das char-array mindestens 3 zeichen haben... wenn du noch 0x voranschreiben willst brauchst du noch 2 zeichen mehr...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
03.06.2004, 16:04 Uhr
~Matthias
Gast


mit int funktioniert die umwandlung, bloss bekomme ich es nicht hin dies nun in einen string zu schreiben. auch bei verwendung von sprintf ist es immer eine unzulässige konvertierung.

Matthias
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
03.06.2004, 17:10 Uhr
Tommix



Hallo,
da geht jetzt wohl was durcheinander. Wenn Du "0xE3" als Text in einer Zeichenkette haben willst geht dass, wie Windalf schon schrieb:

C++:
#include <stdio.h>

int main()
{
    char zahlHex[5];  // 0x + 2 Ziffern + \0
    int zahlDez = 227;

    sprintf(zahlHex, "0x%X", zahlDez);

    printf(zahlHex);    // Ausgabe zum Test
    return 0;
}


Willst Du dagegen tatsächlich

Zitat:

zahlhex[0]=0xE3;


ist das ganz einfach mit

C++:
zahlHex[0] = zahlDez;


erledigt.

Gruss, Tommix
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
04.06.2004, 14:33 Uhr
~Matthias
Gast


Man kann sich das Leben auch schwer machen!

zahlHex[0] = zahlDez;
ist alles was ich wollte!!!

Danke!!!!

Matthias
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
02.11.2005, 19:58 Uhr
~Flouw
Gast


Hallo
zu dem Thema hab ich auch ne Frage, ich will eine hex Zahl in eine dez Zahl umwandeln lassen.
Dabei soll die Groß- und Kleinschreibung der Buchstaben auch berücksichtigt werden.
Und es sollen unzulässige eingaben abgefangen werden...
Für mehrstellig wäre toll, aber zweistellig würde mir aucherstmal weiter helfen.
Bin noch nicht wirklich weit!


Code:
void function2()

{

    char hex;
    hex = getchar();


    cout<<hex<<endl;
    
}



Wäre euch dankbar für Hilfe...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: