metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2012-01-22 10:36 pm

atof, strtod и локаль.

Внезапно: а вот как положено в коде на С конвертить строку в double, если мы точно знаем, что в строке десятичный разделитель ".", и точно знаем, что код будут запускать на системе с адовыми локалями, у которых разделитель "," типа русской, белорусской итд? В дотнете, как положено, есть функция с параметром для локали и инвариантная локаль InvariantCulture. А в олдскульно-кошерном C как? setlocale(LC_NUMERIC,"C"); чо-то не рекомендуют, говорят, не thread-safe.

[identity profile] anatoly borodin (from livejournal.com) 2012-01-23 07:26 am (UTC)(link)
А в Германии откуда, в Италии? Точка только у пиндосов, киви и чайна: en.wikipedia.org/wiki/Decimal_mark#Hindu-Arabic_numeral_system

И почему в Вашей стране тангенс называется tg, хотя во всём остальном мире он tan?