NL_LANGINFO(3)

NAME
nl_langinfo - get locale information

LIBRARY
libc

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 p1003.1-2001.

HISTORY
The nl_langinfo() function appeared in NetBSD 1.0.