The Open Group Base Specifications Issue 6
IEEE Std 1003.1, 2004 Edition
Copyright © 2001-2004 The IEEE and The Open Group, All Rights reserved.

#### NAME

> nl_langinfo - language information

#### SYNOPSIS

> ``[XSI] #include <langinfo.h>
> char *nl_langinfo(nl_item` item`);``
> `
> `

#### DESCRIPTION

> The nl_langinfo() function shall return a pointer to a string containing information relevant to the particular language or cultural area defined in the program's locale (see <langinfo.h>). The manifest constant names and values of item are defined in <langinfo.h>. For example:

>     nl_langinfo(ABDAY_1)

> would return a pointer to the string `"Dom"` if the identified language was Portuguese, and `"Sun"` if the identified language was English.

> Calls to setlocale() with a category corresponding to the category of item (see <langinfo.h>), or to the category LC_ALL , may overwrite the array pointed to by the return value.

> The nl_langinfo() function need not be reentrant. A function that is not required to be reentrant is not required to be thread-safe.

#### RETURN VALUE

> In a locale where langinfo data is not defined, nl_langinfo() shall return a pointer to the corresponding string in the POSIX locale. In all locales, nl_langinfo() shall return a pointer to an empty string if item contains an invalid setting.

> This pointer may point to static data that may be overwritten on the next call.

#### ERRORS

> No errors are defined.

The following sections are informative.

#### EXAMPLES

> ##### Getting Date and Time Formatting Information

> The following example returns a pointer to a string containing date and time formatting information, as defined in the LC_TIME category of the current locale.

>     #include <time.h>
>     #include <langinfo.h>
>     ...
>     strftime(datestring, sizeof(datestring), nl_langinfo(D_T_FMT), tm);
>     ...

#### APPLICATION USAGE

> The array pointed to by the return value should not be modified by the program, but may be modified by further calls to nl_langinfo().

#### RATIONALE

> None.

#### FUTURE DIRECTIONS

> None.

#### SEE ALSO

> setlocale(), the Base Definitions volume of IEEE Std 1003.1-2001, Chapter 7, Locale, <langinfo.h>, <nl_types.h>

#### CHANGE HISTORY

> First released in Issue 2.

#### Issue 5

> The last paragraph of the DESCRIPTION is moved from the APPLICATION USAGE section.

> A note indicating that this function need not be reentrant is added to the DESCRIPTION.

End of informative text.

UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
[ Main Index | XBD | XCU | XSH | XRAT ]