PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : C++: Komma statts Punkt (unter Windows)



Callisto
10.12.2008, 17:11
Bei meinem Compiler (Mingw) stürzt folgendes kleines Programm immer ab. Normalerweise sollte ja statts "de_DE" nur "" reichen aber dann kommt trotzdem immer nur der Punkt.


#include <iostream>
#include <locale>
using namespace std;

int main()
{

locale mylocale("de_DE");
cout.imbue( mylocale );
cout << (double) 3.14159 << endl;


return 0;
}

tarrox
10.12.2008, 22:15
Bei meinem Compiler (Mingw) stürzt folgendes kleines Programm immer ab. Normalerweise sollte ja statts "de_DE" nur "" reichen aber dann kommt trotzdem immer nur der Punkt.

Gib mal folgendes ein um zu überprüfen was überhaupt als Sprache definiert ist, wenn du "" eingibst. Könnte sein das er es Standartmässig auf Englisch hat. Ansonsten sollte das Programm eigentlich funktionieren.


#include <iostream>
#include <locale>
using namespace std;

int main()
{

locale mylocale("");
cout<<mylocale.name()<<endl;

return 0;
}

Callisto
11.12.2008, 08:26
Das liefert "C" zurück!
Wenn ich irgendwas in die "" eintragen will (außer natürlich wenn es "C" ist) kommt immer "This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information."

Keiner ne Ahnung was da reingehört unter Windows?

tarrox
11.12.2008, 15:31
"C" steht für die standart Formatierung Ansi C.

Wenn ich irgendwas in die "" eintragen will (außer natürlich wenn es "C" ist) kommt immer "This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information."
Diese Fehlermeldung tritt auf wenn du eine Formatierung aussuchst die nicht existiert. Welche bei Windows möglich sind weiß ich nicht, aber auf allen Systemen findet man "C" und "POSIX"(eigentlich wie "C"), hab gerade nochmal bei mir geschaut und herausgefunden das Deutsch mit "German_Germany" definiert ist. Damit sollte es eigentlich laufen.

Callisto
12.12.2008, 08:08
Nein auch nicht. Ich habe ja schon alle ausprobiert die ich so überall gefunden habe.

Drakes
12.12.2008, 16:21
Es sollte eigentlich gehen. :(
http://stdcxx.apache.org/doc/stdlibref/locale.html

tarrox
12.12.2008, 23:36
Hab hier eine Liste der von Windows unterstützen Locale gefunden http://www.microsoft.com/globaldev/reference/win2k/setup/localsupport.mspx(theoretisch, Standard German läuft bei mir nicht o.O), wenn keins von dennen funzt, dann hast du die Sprachdateien nicht drauf.

Ansonsten hab ich selber gerade das mit Mingw durchgezogen und es lief auch nicht obwohl visualc++ nicht rummault und läuft, ist von daher höchstwahrscheinlich ein Compilerfehler und liegt nicht an deinem System