Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédente | |
localisation:c [2017/06/24 22:41] – ↷ Page déplacée de internationalisation:c à localisation:c root | localisation:c [2019/10/21 20:08] (Version actuelle) – mhtml -> html root |
---|
=====De la bonne utilisation des locales pour une utilisation cohérente des nombres flottants===== | =====De la bonne utilisation des locales pour une utilisation cohérente des nombres flottants===== |
| |
[[https://stdcxx.apache.org/doc/stdlibug/24-3.html|Source]], {{:internationalisation:c:differences_between_the_c_locale_and_the_c_locales.maff|Archive}} | [[https://stdcxx.apache.org/doc/stdlibug/24-3.html|Differences between the C Locale and the C++ Locales]] {{ :localisation:c:differences_between_the_c_locale_and_the_c_locales_2019-10-21_20_05_31_.html |Archive le 21/10/2019}} |
| |
Par défaut, la locale est celle américaine. Ainsi, le séparateur décimal est le point (''.''). Il est souhaitable d'utiliser celui de l'utilisateur. | Par défaut, la locale est celle américaine. Ainsi, le séparateur décimal est le point (''.''). Il est souhaitable d'utiliser celui de l'utilisateur. |
| |
En C, il n'existe qu'une seule locale configurable par ''#include <locale.h>''. Celle-ci est définie par la fonction ''setlocale''. Ainsi pour forcer l'utilisation de l'environnement locale, il convient de l'appeler de la façon suivante : ''setlocale (LC_ALL, "");'' | En C, il n'existe qu'une seule locale configurable par ''#include <locale.h>''. Celle-ci est définie par la fonction ''setlocale''. Ainsi pour forcer l'utilisation de l'environnement locale, il convient de l'appeler de la façon suivante : ''setlocale (LC_ALL, %%""%%);'' |
| |
Cependant en C++, il existe plusieurs locales configurables par ''#include <locale>'' (sans ''.h''). ''std::setlocale'' est utilisée pour définir les fonctions identiques à celles du C (''vsnprintf'' par exemple) ou encore ''std::to_string (double)''. | Cependant en C++, il existe plusieurs locales configurables par ''#include <locale>'' (sans ''.h''). ''std::setlocale'' est utilisée pour définir les fonctions identiques à celles du C (''vsnprintf'' par exemple) ou encore ''std::to_string (double)''. |