locale.h - category macros
The <locale.h> header provides a definition for structure lconv, which includes at least the following members. (See the definitions of LC_MONETARY and LC_NUMERIC.)
char *currency_symbol char *decimal_point char frac_digits char *grouping char *int_curr_symbol char int_frac_digits char *mon_decimal_point char *mon_grouping char *mon_thousands_sep char *negative_sign char n_cs_precedes char n_sep_by_space char n_sign_posn char *positive_sign char p_cs_precedes char p_sep_by_space char p_sign_posn char *thousands_sep
The <locale.h> header defines NULL (as defined in <stddef.h>) and at least the following as macros:LC_ALL LC_COLLATE LC_CTYPE LC_MESSAGES LC_MONETARY LC_NUMERIC LC_TIME
which expand to distinct integral-constant expressions, for use as the first argument to the setlocale() function.
Additional macro definitions, beginning with the characters LC_ and an upper-case letter, may also be given here.
The following are declared as functions and may also be defined as macros. Function prototypes must be provided for use with an ISO C compiler.
struct lconv *localeconv(void); char setlocale(int, const char *);
localeconv(), setlocale(), the Environment Variables specification .