setlocale - modify and query a program's locale
#include <locale.h> char *setlocale (int category, const char *locale);
setlocale selects the appropriate piece of the program's locale as specified by the category and locale arguments. The category argument may have the following values: LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES LC_ALLThese names are defined in the locale.h header file. For the TUXEDO System/T compatibility functions, setlocale allows only a single locale for all categories. Setting any category is treated the same as LC_ALL, which names the program's entire locale.
A value of "C" for locale specifies the default environment.
A value of "" for locale specifies that the locale should be taken from an environment variable. The environment variable LANG is checked for a locale.
At program startup, the equivalent of setlocale(LC_ALL, "C")
is executed. This has the effect of initializing each category to the locale described by the environment "C".
If a pointer to a string is given for locale, setlocale attempts to set the locale for all the categories to locale. The locale must be a simple locale, consisting of a single locale. If setlocale fails to set the locale for any category, a null pointer is returned and the program's locale for all categories is not changed. Otherwise, locale is returned.
A null pointer for locale causes setlocale to return the current locale associated with the category. The program's locale is not changed.
$TUXDIR/locale/C/LANGINFO - time and money database for the C locale $TUXDIR/locale/locale/* - locale specific information for each locale $TUXDIR/locale/C/*_CAT - text messages for the C locale
A composite locale is not supported. A composite locale is a string beginning with a ``/'', followed by the locale of each category, separated by a ``/''.
ctime(3C), ctype(3C), getdate(3C), localeconv(3C), printf(3S),
strftime(3C), strtod(3C), environ(5),
mklanginfo(1)