The locale subsystem of the C library can be selected at link time or can be extended to be selectable at runtime. The following list describes the use of locale categories by the library:
The default implementation of each locale category is for the C locale. The library also provides an alternative, ISO8859-1 (Latin-1 alphabet) implementation of each locale category that you can select at link time.
Both the C and ISO8859-1 default implementations usually provide one locale for each category to select at runtime.
You can replace each locale category individually.
You can include as many locales in each category as you choose and you can name your locales as you choose.
Each locale category uses one word in the private static data of the library.
The locale category data is read-only and position independent.
scanf()forces the inclusion of the
LC_CTYPElocale category, but in either of the default locales this adds only 260 bytes of read-only data to several kilobytes of code.