NAME
nl_langinfo —
get locale
information
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <langinfo.h>
char *
nl_langinfo(
nl_item
item);
DESCRIPTION
The
nl_langinfo() function returns a pointer to a string
containing information set by the program's locale.
The names and values of
item are defined in
<langinfo.h>. The entries under
Category indicate in which
setlocale(3) category each
item is defined.
| Constant |
Category |
Meaning |
| CODESET |
LC_CTYPE |
Codeset name |
| D_T_FMT |
LC_TIME |
String for formatting date and time |
| D_FMT |
LC_TIME |
Date format string |
| T_FMT |
LC_TIME |
Time format string |
| T_FMT_AMPM |
LC_TIME |
A.M. or P.M. time format string |
| AM_STR |
LC_TIME |
Ante-meridiem affix |
| PM_STR |
LC_TIME |
Post-meridiem affix |
| DAY_1 |
LC_TIME |
Name of the first day of the week (e.g.: Sunday) |
| DAY_2 |
LC_TIME |
Name of the second day of the week (e.g.: Monday) |
| DAY_3 |
LC_TIME |
Name of the third day of the week (e.g.: Tuesday) |
| DAY_4 |
LC_TIME |
Name of the fourth day of the week (e.g.:
Wednesday) |
| DAY_5 |
LC_TIME |
Name of the fifth day of the week (e.g.:
Thursday) |
| DAY_6 |
LC_TIME |
Name of the sixth day of the week (e.g.: Friday) |
| DAY_7 |
LC_TIME |
Name of the seventh day of the week (e.g.:
Saturday) |
| ABDAY_1 |
LC_TIME |
Abbreviated name of the first day of the week |
| ABDAY_2 |
LC_TIME |
Abbreviated name of the second day of the week |
| ABDAY_3 |
LC_TIME |
Abbreviated name of the third day of the week |
| ABDAY_4 |
LC_TIME |
Abbreviated name of the fourth day of the week |
| ABDAY_5 |
LC_TIME |
Abbreviated name of the fifth day of the week |
| ABDAY_6 |
LC_TIME |
Abbreviated name of the sixth day of the week |
| ABDAY_7 |
LC_TIME |
Abbreviated name of the seventh day of the week |
| MON_1 |
LC_TIME |
Name of the first month of the year |
| MON_2 |
LC_TIME |
Name of the second month |
| MON_3 |
LC_TIME |
Name of the third month |
| MON_4 |
LC_TIME |
Name of the fourth month |
| MON_5 |
LC_TIME |
Name of the fifth month |
| MON_6 |
LC_TIME |
Name of the sixth month |
| MON_7 |
LC_TIME |
Name of the seventh month |
| MON_8 |
LC_TIME |
Name of the eighth month |
| MON_9 |
LC_TIME |
Name of the ninth month |
| MON_10 |
LC_TIME |
Name of the tenth month |
| MON_11 |
LC_TIME |
Name of the eleventh month |
| MON_12 |
LC_TIME |
Name of the twelfth month |
| ABMON_1 |
LC_TIME |
Abbreviated name of the first month |
| ABMON_2 |
LC_TIME |
Abbreviated name of the second month |
| ABMON_3 |
LC_TIME |
Abbreviated name of the third month |
| ABMON_4 |
LC_TIME |
Abbreviated name of the fourth month |
| ABMON_5 |
LC_TIME |
Abbreviated name of the fifth month |
| ABMON_6 |
LC_TIME |
Abbreviated name of the sixth month |
| ABMON_7 |
LC_TIME |
Abbreviated name of the seventh month |
| ABMON_8 |
LC_TIME |
Abbreviated name of the eighth month |
| ABMON_9 |
LC_TIME |
Abbreviated name of the ninth month |
| ABMON_10 |
LC_TIME |
Abbreviated name of the tenth month |
| ABMON_11 |
LC_TIME |
Abbreviated name of the eleventh month |
| ABMON_12 |
LC_TIME |
Abbreviated name of the twelfth month |
| ERA |
LC_TIME |
Era description segments |
| ERA_D_FMT |
LC_TIME |
Era date format string |
| ERA_D_T_FMT |
LC_TIME |
Era date and time format string |
| ERA_T_FMT |
LC_TIME |
Era time format string |
| ALT_DIGITS |
LC_TIME |
Alternative symbols for digits |
| RADIXCHAR |
LC_NUMERIC |
Radix character |
| THOUSEP |
LC_NUMERIC |
Separator for thousands |
| YESEXPR |
LC_MESSAGES |
Affirmative response expression |
| NOEXPR |
LC_MESSAGES |
Negative response expression |
RETURN VALUES
nl_langinfo() returns a pointer to an empty string if
item is invalid.
EXAMPLES
The following example uses
nl_langinfo() to obtain the date
and time format for the current locale:
#include <time.h>
#include <langinfo.h>
#include <locale.h>
int main(void)
{
char datestring[100];
struct tm *tm;
time_t t;
char *ptr;
t = time(NULL);
tm = localtime(&t);
(void)setlocale(LC_ALL, "");
ptr = nl_langinfo(D_T_FMT);
strftime(datestring, sizeof(datestring), ptr, tm);
printf("%s\n", datestring);
return (0);
}
SEE ALSO
setlocale(3),
tm(3),
nls(7)
STANDARDS
The
nl_langinfo() function conforms to
IEEE
Std 1003.1-2001 (“POSIX.1”).
HISTORY
The
nl_langinfo() function appeared in
NetBSD
1.0.