WikiSort.ru - Не сортированное

ПОИСК ПО САЙТУ | о проекте
Стандартная библиотека
языка программирования С

locale.h — заголовочный файл стандартной библиотеки языка программирования С, который используется для задач, связанных с локализацией.

Типы данных

Заголовочный файл объявляет структуру lconv и её поля, которая хранит информацию о текущей кодировке для форматирования чисел.[1]

Название Функция Значение для "C"
char *decimal_pointРазделитель десятичных чисел для неденежных величин"."
char *thousands_sepРазделитель тысяч для неденежных величин""
char *groupingСтрока, элементы которой отображают размер каждой группы чисел для форматированных неденежных величин""
char *mon_decimal_pointРазделитель десятичных чисел для денежных величин""
char *mon_thousands_sepРазделитель тысяч для денежных величин""
char *mon_groupingСтрока, элементы которой отображают размер каждой группы чисел для форматированных денежных величин""
char *positive_signСимвол, отображающий неотрицательность для денежных величин""
char *negative_signСимвол, отображающий отрицательность денежных величин""
char *currency_symbolЗнак валюты""
char frac_digitsЧисло дробных знаков для денежных величинCHAR_MAX
char p_cs_precedes1 если знак валюты предшествует неотрицательной денежной величине и 0 в противном случаеCHAR_MAX
char n_cs_precedes1 если знак валюты предшествует отрицательной денежной величине и 0 в противном случаеCHAR_MAX
char p_sep_by_spaceУказывает промежуток между символом валюты, знаком и неотрицательной денежной величинойCHAR_MAX
char n_sep_by_spaceУказывает промежуток между символом валюты, знаком и отрицательной денежной величинойCHAR_MAX
char p_sign_posnУказывает позицию положительного знака для неотрицательных денежных величинCHAR_MAX
char n_sign_posnУказывает позицию отрицательного знака для отрицательных денежных величинCHAR_MAX
char *int_curr_symbolМеждународный символ валюты""
char int_frac_digitsКоличество дробных чисел для денежных величин в международном форматеCHAR_MAX
char int_p_cs_precedes1 если международный валютный символ предшествует неотрицательной денежной величине и 0 наоборотCHAR_MAX
char int_n_cs_precedesто же самое для отрицательных денежных величин в международном форматеCHAR_MAX
char int_p_sep_by_spaceУказывает расстояние между знаком, символом и значением денежной величины в международном форматеCHAR_MAX
char int_n_sep_by_spaceто же самое для отрицательных чиселCHAR_MAX
char int_p_sign_posnУказывает расстояние между положительным знаком и денежной величиной в международном форматеCHAR_MAX
char int_n_sign_posnто же самое для отрицательных денежных величин в международном форматеCHAR_MAX

Макросы

Заголовочный файл определяет следующие макросы-категории:[1]

Название Затрагивает
LC_ALLвсе параметры локализации
LC_COLLATEповедение функций strcoll и strxfrm
LC_CTYPEповедение всех функций из ctype.h кроме isdigit и isxdigit
LC_MONETARYотображение денежных величин
LC_NUMERICотображение десятичных чисел
LC_TIMEповедение strftime и wcstrftime

Функции

#include <locale.h>
struct lconv *localeconv(void);
char *setlocale(int category, const char *locale);

Функция localeconv получает текущую кодировку.

Функция setlocale устанавливает новую локализацию для операций, связанных с категорией category (является одной из предопределённых макросами). Стандарт определяет следующие кодировки:

  1. "" — локализация по умолчанию для данной платформы
  2. "C" — минимальная локализация для окружения языка Си

и иные системно-зависимые.[1]

Если запрос на изменение локализации может быть удовлетворён, функция возвращает текущую локализацию для категории category. В противном случае возвращается NULL.

При запуске программы используется "C" локализация.

Пример кода

#include <stdio.h>
#include <locale.h>

int main(void)
{
  struct lconv* currentlocale;
  currentlocale = localeconv();
  printf("In current locale standard currency symbol is %c\n", *(currentlocale->currency_symbol));
  return 0;
}

Пример использования функции (setlocale)

#include <stdio.h>
#include <locale.h>

int main(void)
{
  setlocale(LC_ALL, "RU");
  printf("Привет мир! \n");
  return 0;
}

Ссылки

Примечания

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2024
WikiSort.ru - проект по пересортировке и дополнению контента Википедии