używam następującej składni C++ na wyjściu wartość zmiennoprzecinkową na platformie Windows:C++ printf z% f ale zlokalizowana w kraju użytkownika
printf("%.2f", 1.5);
to działa dobrze, jeśli uruchomić go na angielski konto użytkownika. Zakładam, że jeśli uruchomię to, powiedzmy, francuskie konto użytkownika, wynik będzie wynosił 1,50 zamiast 1,50.
Dlaczego go nie widzę i jak uzyskać pożądany wynik?
Dzięki, ale kiedy mam zadzwonić setlocale - na początku, kiedy aplikacja inicjuje lub przed każdym printf? – ahmd0
Wystarczy raz zadzwonić na początku aplikacji. – MartinStettner
Alternatywą C++ jest 'std :: cout.imbue (std :: locale (" "));' – MSalters