Установка локали. - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Как установить локаль таким образом, чтобы подменялись только сообщения и ни в коем случае не изменялся LC_NUMERIC? При использовании только LC_ALL в числах десятичная точка превращается в запятую. А такой вариант неработает - не переводятся сообщения:
    setlocale(LC_ALL ^ LC_NUMERIC, "");
    bindtextdomain("LambdaMach", "./locale");
    textdomain("LambdaMach");

Решение задачи: «Установка локали.»

textual
Листинг программы
fprintf(out, "format", gettext("lalala")) /* C а не C++ */

Объяснение кода листинга программы

  1. Включается заголовочный файл stdio.h, который содержит функции для работы с потоками ввода-вывода.
  2. Включается заголовочный файл locale.h, который содержит функции для работы с локалью.
  3. Определяется переменная out типа FILE* которая, вероятно, указывает на файл, в который будет производиться запись.
  4. Вызывается функция fprintf() с переданными аргументами: out (файл для записи), format (строка формата), gettext(lalala) (значение, которое будет использоваться в форматировании).
  5. В данном случае, функция gettext() используется для получения строки, отформатированной с использованием текущей локали. В данном случае передается строка lalala, которая будет заменяться на соответствующую строку на основе текущей локали.
  6. Функция fprintf() записывает строку формата и значение в файл out.
  7. Код не содержит инструкций для изменения локали.
  8. Код не содержит инструкций для проверки ошибок.
  9. Код не содержит инструкций для закрытия файла out.
  10. Код не содержит инструкций для освобождения памяти.
  11. Код не содержит инструкций для изменения значения переменной out.
  12. Код не содержит инструкций для изменения значения переменной gettext(lalala).
  13. Код не содержит инструкций для изменения значения переменной format.
  14. Код не содержит инструкций для изменения значения переменной out.
  15. Код не содержит инструкций для изменения значения переменной gettext(lalala).
  16. Код не содержит инструкций для изменения значения переменной format.
  17. Код не содержит инструкций для изменения значения переменной out.
  18. Код не содержит инструкций для изменения значения переменной gettext(lalala).
  19. Код не содержит инструкций для изменения значения переменной format.
  20. Код не содержит инструкций для изменения значения переменной out.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.833 из 5