Select a program's locale
Warning: Don't use setlocale() in QNX Neutrino programs; this function only provides POSIX compliance.
Synopsis:
#include <locale.h>
char * setlocale( int category,
const char * locale );
Arguments:
- category
- The part of the environment that you want to set; one of:
- LC_ALL — select the entire locale environment.
- LC_COLLATE — select only the collating sequence.
- LC_CTYPE — select only the character-handling information.
- LC_MESSAGES — specify the language to be used for messages.
- LC_MONETARY — select only monetary formatting information.
- LC_NUMERIC — select only the numeric-format environment.
- LC_TIME — select only the time-related environment.
- locale
- The locale that you want to use.
The following built-in locales are offered:
- C (default)
- C-TRADITIONAL
- POSIX
Note: The C and POSIX locales are equivalent.
Library:
libc
Use the -l c option to
qcc
to link against this library.
This library is usually included automatically.
Description:
The setlocale() function selects a program's
locale, according to the specified category
and the specified locale.
A locale affects several things:
- The collating sequence (the order in which characters compare with one another) used by
strcoll() or
wcscoll().
- The way certain character-handling functions (such as
isalnum() and
isalpha()) operate.
The wide-character versions include iswalnum() and
iswalpha().
- The decimal-point character used in formatted
input/output and string conversion
(printf(),
scanf(),
and friends).
- The format and names used in the string produced by the
strftime() and
wcsftime() functions.
See the localeconv()
function for more information about the locale.
At the start of a program, the default C locale is
initialized as if the following call to setlocale()
appeared at the start of
main():
(void)setlocale( LC_ALL, "C" );
Returns:
The string associated with the specified category for the new
locale, or NULL if an error occurs.
This function doesn't change the program's locale when error occurs.
Note:
-
For a NULL pointer of locale, this function returns a pointer to the string
associated with the category for the
program's current locale. This function doesn't change the
program's locale.
- QNX Neutrino provides this function for POSIX compatibility, but it isn't adequate for internationalization. QNX Neutrino ships
the International Components for Unicode (ICU) libraries (libicu*) that you can use
instead. For more information about ICU, see https://icu.unicode.org/home.
Classification:
ANSI,
POSIX 1003.1
Safety: |
|
Cancellation point |
No |
Interrupt handler |
No |
Signal handler |
No |
Thread |
No |