double --> char



  • Hallo!

    Also, ich brauche einen Tipp.

    Wenn ich eine double x = 122.345 habe und diese als char (also im HEX Format) verwenden möchte, was muß ich tun?

    cout<<(char)x<<endl;

    liefert ja nur den gerundeten Ganzzahlenwert. Hat jemand eine Idee?

    Danke



  • static_cast<const char *>(&mydouble) << endl
    


  • Hmm.

    Wie? Wenn ich mein double

    double x = 223.3345;
    
    	static_cast<const char *>(&x);
    

    kommt:

    C2440: 'static_cast' : 'double *' kann nicht in 'const char *' konvertiert werden
    Die Typen, auf die verwiesen wird, sind nicht verwandt; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat
    Fehler beim Ausführen von cl.exe.

    ...

    Danke, aber ich verstehe das ganze noch nicht, kanns Du mir weiterhelfen?



  • Du willst den Double als Zeichenkette haben?

    Wenn ja

    #include <sstream>
    #include <string>
    #include <iostream>
    
    int main ()
    {
        std::ostringstream sstream;
        double myDouble = 123.23;
    
        sstream << myDouble;
    
        std::string str (sstream.str ());    // In str steht jetzt der Wert von myDouble als Zeichenkette
    
        cout << str;
    }
    


  • hallo,

    oder so:

    char buff[80];
    double mydouble=23.5;
    sprintf(buff,"%f",mydouble);//in buff ist der double wert als char
    

    MFG TaccoGo


Anmelden zum Antworten