2 Stimmen

mfc-Programm verwendet falsches Dezimaltrennzeichen/Sprache

Ich habe das Komma als Dezimaltrennzeichen in meinen Windows-Regionaleinstellungen (portugiesische Sprache), und alle Programme, die ich entwickle, verwenden das Komma bei der Formatierung von Zeichenfolgen oder bei der atof .

Dieses spezielle Programm, das mir in die Hände fiel, besteht jedoch darauf, den Punkt als Dezimaltrennzeichen zu verwenden, unabhängig von meinen regionalen Einstellungen.

Ich rufe nicht an setlocale irgendwo im Programm oder einer anderen Funktion zur Sprachumschaltung AFAIK. Tatsächlich habe ich diese Codezeilen ganz am Anfang des Programms InitInstance() Funktion:

double var = atof("4,87");
TRACE("%f", fDecimal);

Daraus ergibt sich 4.000000 in diesem Programm und 4,870000 in jedem anderen.

Ich denke, es muss eine falsche Einstellung in den Projekteigenschaften geben, aber ich weiß nicht, welche. Kann jemand helfen?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X