locale.h(3HEAD) Headers locale.h(3HEAD)NAME
locale.h, locale - category macros
SYNOPSIS
#include <locale.h>
DESCRIPTION
The <locale.h> header provides a definition for the lconv structure, which includes the following members. (See the definition of LC_MONE-
TARY in locale(5).)
char *currency_symbol
char *decimal_point
char frac_digits
char *grouping
char *int_curr_symbol
char int_frac_digits
char int_n_cs_precedes
char int_n_sep_by_space
char int_n_sign_posn
char int_p_cs_precedes
char int_p_sep_by_space
char int_p_sign_posn
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 the following as macros:
LC_ALL
LC_COLLATE
LC_CTYPE
LC_MESSAGES
LC_MONETARY
LC_NUMERIC
LC_TIME
The preceding expand to distinct integer constant expressions, for use as the first argument to the setlocale() function. See setlo-
cale(3C).
Additional macro definitions, beginning with the characters LC_ and an uppercase letter, can also be specified here.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Interface Stability |Standard |
+-----------------------------+-----------------------------+
SEE ALSO setlocale(3C), localeconv(3C), stddef.h(3HEAD), attributes(5), locale(5), standards(5)SunOS 5.10 10 Sep 2004 locale.h(3HEAD)
Check Out this Related Man Page
LOCALECONV(3) BSD Library Functions Manual LOCALECONV(3)NAME
localeconv, localeconv_l -- natural language formatting for C
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <locale.h>
struct lconv *
localeconv(void);
#include <xlocale.h>
struct lconv *
localeconv_l(locale_t loc);
DESCRIPTION
The localeconv() function returns a pointer to a structure which provides parameters for formatting numbers, especially currency values:
struct lconv {
char *decimal_point;
char *thousands_sep;
char *grouping;
char *int_curr_symbol;
char *currency_symbol;
char *mon_decimal_point;
char *mon_thousands_sep;
char *mon_grouping;
char *positive_sign;
char *negative_sign;
char int_frac_digits;
char frac_digits;
char p_cs_precedes;
char p_sep_by_space;
char n_cs_precedes;
char n_sep_by_space;
char p_sign_posn;
char n_sign_posn;
char int_p_cs_precedes;
char int_n_cs_precedes;
char int_p_sep_by_space;
char int_n_sep_by_space;
char int_p_sign_posn;
char int_n_sign_posn;
};
The individual fields have the following meanings:
decimal_point The decimal point character, except for currency values, cannot be an empty string.
thousands_sep The separator between groups of digits before the decimal point, except for currency values.
grouping The sizes of the groups of digits, except for currency values. This is a pointer to a vector of integers, each of size
char, representing group size from low order digit groups to high order (right to left). The list may be terminated with
0 or CHAR_MAX. If the list is terminated with 0, the last group size before the 0 is repeated to account for all the dig-
its. If the list is terminated with CHAR_MAX, no more grouping is performed.
int_curr_symbol The standardized international currency symbol.
currency_symbol The local currency symbol.
mon_decimal_point The decimal point character for currency values.
mon_thousands_sep The separator for digit groups in currency values.
mon_grouping Like grouping but for currency values.
positive_sign The character used to denote nonnegative currency values, usually the empty string.
negative_sign The character used to denote negative currency values, usually a minus sign.
int_frac_digits The number of digits after the decimal point in an international-style currency value.
frac_digits The number of digits after the decimal point in the local style for currency values.
p_cs_precedes 1 if the currency symbol precedes the currency value for nonnegative values, 0 if it follows.
p_sep_by_space 1 if a space is inserted between the currency symbol and the currency value for nonnegative values, 0 otherwise.
n_cs_precedes Like p_cs_precedes but for negative values.
n_sep_by_space Like p_sep_by_space but for negative values.
p_sign_posn The location of the positive_sign with respect to a nonnegative quantity and the currency_symbol, coded as follows:
0 Parentheses around the entire string.
1 Before the string.
2 After the string.
3 Just before currency_symbol.
4 Just after currency_symbol.
n_sign_posn Like p_sign_posn but for negative currency values.
int_p_cs_precedes Same as p_cs_precedes, but for internationally formatted monetary quantities.
int_n_cs_precedes Same as n_cs_precedes, but for internationally formatted monetary quantities.
int_p_sep_by_space
Same as p_sep_by_space, but for internationally formatted monetary quantities.
int_n_sep_by_space
Same as n_sep_by_space, but for internationally formatted monetary quantities.
int_p_sign_posn Same as p_sign_posn, but for internationally formatted monetary quantities.
int_n_sign_posn Same as n_sign_posn, but for internationally formatted monetary quantities.
Unless mentioned above, an empty string as a value for a field indicates a zero length result or a value that is not in the current locale.
A CHAR_MAX result similarly denotes an unavailable value.
While the localeconv() function uses the current locale, the localeconv_l() function may be passed a locale directly. See xlocale(3) for more
information.
RETURN VALUES
The localeconv() function returns a pointer to a static object which may be altered by later calls to setlocale(3) or localeconv().
ERRORS
No errors are defined.
SEE ALSO setlocale(3), strfmon(3), xlocale(3)STANDARDS
The localeconv() function conforms to ISO/IEC 9899:1999 (``ISO C99'').
HISTORY
The localeconv() function first appeared in 4.4BSD.
BSD November 21, 2003 BSD