<<< Previous | Home | Next >>>

The Open Group Base Specifications Issue 7
IEEE Std 1003.1-2008
Copyright © 2001-2008 The IEEE and The Open Group

#### NAME

> uselocale - use locale in current thread

#### SYNOPSIS

> ``[CX] #include <locale.h>
> locale_t uselocale(locale_t` newloc`);``
> `
> `

#### DESCRIPTION

> The uselocale() function shall set the current locale for the current thread to the locale represented by newloc.

> The value for the newloc argument shall be one of the following:

> 1. A value returned by the newlocale() or duplocale() functions

> 2. The special locale object descriptor LC_GLOBAL_LOCALE

> 3. ( locale_t)0

> Once the uselocale() function has been called to install a thread-local locale, the behavior of every interface using data from the current locale shall be affected for the calling thread. The current locale for other threads shall remain unchanged.

> If the newloc argument is a null pointer, the object returned is the current locale or LC_GLOBAL_LOCALE if there has been no previous call to uselocale() for the current thread.

> If the newloc argument is LC_GLOBAL_LOCALE , the thread shall use the global locale determined by the setlocale() function.

#### RETURN VALUE

> The uselocale() function returns the locale handle from the previous call for the current thread. If there was no such previous call, the function shall return the value LC_GLOBAL_LOCALE .

#### ERRORS

> The uselocale() function may fail if:

> [EINVAL]
>   locale is not a valid locale object.

The following sections are informative.

#### EXAMPLES

> None.

#### APPLICATION USAGE

> Unlike the setlocale() function, the uselocale() function does not allow replacing some locale categories only. Applications that need to install a locale which differs only in a few categories must use newlocale() to change a locale object equivalent to the currently used locale and install it.

#### RATIONALE

> None.

#### FUTURE DIRECTIONS

> None.

#### SEE ALSO

> duplocale , freelocale , newlocale , setlocale

> XBD <locale.h>

#### CHANGE HISTORY

> First released in Issue 7.

End of informative text.

return to top of page

UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
Copyright © 2001-2008 The IEEE and The Open Group, All Rights Reserved
[ Main Index | XBD | XSH | XCU | XRAT ]

<<< Previous | Home | Next >>>