Manual Page Result
0
Command: localeconv | Section: 3 | Source: OpenBSD | File: localeconv.3
LOCALECONV(3) FreeBSD Library Functions Manual LOCALECONV(3)
NAME
localeconv - retrieve parameters for locale-dependent formatting of
numbers
SYNOPSIS
#include <locale.h>
struct lconv *
localeconv(void);
DESCRIPTION
The localeconv() function returns a pointer to a static structure which
provides parameters for locale(1)-dependent formatting of numbers. On
OpenBSD, nothing in the returned structure ever changes. On other
operating systems, the contents of the structure may vary according to
the LC_NUMERIC and LC_MONETARY locale categories.
It provides the following fields of type char *:
decimal_point The decimal point character, except for currency
values.
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 digits. 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 non-negative currency
values, usually the empty string.
negative_sign The character used to denote negative currency values,
usually a minus sign.
It also provides the following fields of type char:
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 non-negative values, 0 if it follows.
p_sep_by_space 1 if a space is inserted between the currency symbol
and the currency value for non-negative 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
non-negative 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 Like p_cs_precedes but for the international symbol.
int_n_cs_precedes Like n_cs_precedes but for the international symbol.
int_p_sep_by_space
Like p_sep_by_space but for the international symbol.
int_n_sep_by_space
Like n_sep_by_space but for the international symbol.
int_p_sign_posn Like p_sign_posn but for the international symbol.
int_n_sign_posn Like n_sign_posn but for the international symbol.
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.
SEE ALSO
locale(1), nl_langinfo(3), setlocale(3)
STANDARDS
The localeconv() function conforms to ANSI X3.159-1989 ("ANSI C89").
HISTORY
The localeconv() function first appeared in 4.3BSD-Net/2.
FreeBSD 14.1-RELEASE-p8 September 11, 2022 FreeBSD 14.1-RELEASE-p8