На что влияет установка или изменение locale
Дальше: Установка или изменение locale Вверх: Интернационализация Назад: Что такое локализация
На что влияет установка или изменение locale
При компиляции программы, так же как и при ее выполнении, если не указаны явно какие-либо действия по установке locale соответственно программистом и пользователем, locale устанавливается по умолчанию в так называемое C (иногда также называется POSIX) locale -- минимально необходимое для трансляции и нормальной работы. Это locale содержит некоторые разумные (по крайней мере с точки зрения жителей США и европейцев) значения всех необходимых параметров. При измении же locale могут изменяться (но не обязательно должны -- в зависимости от струкруры заданного locale) параметры, оказываюшие влияние на:
- набор значимых многобайтовых символьных последовательностей (см. ниже) и способ их интерпретации;
- представление национального алфавита, порядок букв и соглашения по преобразованию заглавных букв в строчные и наоборот;
- отношение порядка при сравнения символов в национальном алфавите -- например, при лексикографическом сравнении символьных строк;
- формат представления чисел и денежных единиц;
- формат представления даты и времени;
- язык, используемый программой для взаимодействия с пользователем.
Работа программиста облегчается тем, что не все действия по установке locale надо выполнять вручную -- многие из них производятся автоматически в библиотечных подпрограммах. Например, в зависимости от выбранного locale функции сравнения строк strcoll и strxfrm автоматически устанавливают правильные отношения порядка. С другой стороны, стандартные механизмы locale не обладают каким-либо интеллектом и не могут, скажем, автоматически переводить сообщения, выдаваемые программой, с одного языка на другой. Программист должен заранее предоставить наборы таких сообщений -- по одному для каждого языка, использование которого предполагается.
Dmitry A. Antipov
1999-05-26