double in string var. aus string.h konvertieren



  • Hallo erstmal.

    Also ich brauche ein Programm das mir ein Zahl rundet. Da ich nichts vernünftiges gefunden habe wollte ich mir ein eigenes Schreiben. Sieht bis jetzt so aus:

    double runden(double ZahlZumRunden)
    {
    int Nachkommastellen;
    string Zahl = ZahlZumRunden;

    int Position = Zahl.find(".",0);
    Zahl = Zahl.substr(Zahl.length()-Position,Position+1);
    Nachkommastellen = Zahl.length();

    ZahlZumRunden *= pow(10,Nachkommastellen+1);
    if(ZahlZumRunden>0)
    {
    ZahlZumRunden += 5;
    ZahlZumRunden = floor(ZahlZumRunden/10);
    }
    else
    {
    ZahlZumRunden -= 5;
    ZahlZumRunden = ceil(ZahlZumRunden/10);
    }

    return ZahlZumRunden /= pow(10,Nachkommastellen);
    }

    Mein Problem ist, daß er mir die double-Variable nicht in die string schreibt.
    Weiß jemand wie man das machen kann? Visual C++ kennt ja leider FloatToStr() nicht.

    Danke für jede Hilfe

    Gruß Novus



  • Also wenn du die MFC verwendest, worauf man ja schließen kann wenn du hier postest, dann nimm doch einen CString:

    CString str = "";
    str.Format("%f",deineZahl);
    

    Wenn string nur ein char* ist, dann machs mit sprintf:

    sprintf(deinString,"%f",deineZahl);
    

    Gruß

    Stalin


Anmelden zum Antworten