Synopsis
typedef struct {
  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;
} lconv;
Description

lconv structure holds formatting information on how numeric values are to be written. Note that the order of fields in this structure is not consistent between implementations, nor is it consistent between C89 and C99 standards.

The members decimal_point, grouping, and thousands_sep are controlled by LC_NUMERIC, the remainder by LC_MONETARY.

The members int_n_cs_precedes, int_n_sep_by_space, int_n_sign_posn, int_p_cs_precedes, int_p_sep_by_space. and int_p_sign_posn are added by the C99 standard.

We have standardized on the ordering specified by the ARM EABI for the base of this structure. This ordering is neither that of C89 nor C99.

Member Description
currency_symbol Local currency symbol.
decimal_point Decimal point separator.
frac_digits Amount of fractional digits to the right of the decimal point for monetary quantities in the local format.
grouping Specifies the amount of digits that form each of the groups to be separated by thousands_sep separator for non-monetary quantities.
int_curr_symbol International currency symbol.
int_frac_digits Amount of fractional digits to the right of the decimal point for monetary quantities in the international format.
mon_decimal_point Decimal-point separator used for monetary quantities.
mon_grouping Specifies the amount of digits that form each of the groups to be separated by mon_thousands_sep separator for monetary quantities.
mon_thousands_sep Separators used to delimit groups of digits to the left of the decimal point for monetary quantities.
negative_sign Sign to be used for negative monetary quantities.
n_cs_precedes Whether the currency symbol should precede negative monetary quantities.
n_sep_by_space Whether a space should appear between the currency symbol and negative monetary quantities.
n_sign_posn Position of the sign for negative monetary quantities.
positive_sign Sign to be used for nonnegative (positive or zero) monetary quantities.
p_cs_precedes Whether the currency symbol should precede nonnegative (positive or zero) monetary quantities.
p_sep_by_space Whether a space should appear between the currency symbol and nonnegative (positive or zero) monetary quantities.
p_sign_posn Position of the sign for nonnegative (positive or zero) monetary quantities.
thousands_sep Separators used to delimit groups of digits to the left of the decimal point for non-monetary quantities.