0
Ich habe eine CString Variable, die ich brauche, in DoppelC++ atof/_wtof, Rundungsfehler
CString sVal(_T(" 4.2"));
double dbl2 = _wtof(sVal);
zu konvertieren Und ich habe DBL2 = 4.0000 anstelle von 4,2. Was könnte der Grund für die Rundung sein?
Können Sie ein komplettes Hauptprogramm mit dieser Probe zeigen, bitte (und überprüfen Sie es, das Problem zuerst zeigt). Im Idealfall sollten Sie es konvertieren, um standard 'std :: wstring' zu verwenden, aber wenn nicht, würde ich die Tags so ändern, dass sie etwas MS-spezifisches enthalten. –
Sind Sie in Kontinentaleuropa? (Mit anderen Worten, ist Ihre Maschine mit einem Dezimaltrennzeichen von ','?) Eingerichtet, kann es eine länderspezifische Umwandlung durchführen. –
Russland, Setlocale (LC_ALL, ".1251"); Du hast Recht und ersetzst "." zu "," beseitigt das Problem –