The CrossWorks C library provides only the ‘C’ locale; if you need other locales, you must provide those by linking them into your application. We have constructed a number of locales from the Unicode Common Locale Data Repository (CLDR) and provided them in source form for you to include in your application.

A C library locale is divided into two parts:

The first, the locale data, is independent of how characters are represented. The second, the code set in use, defines how to map between narrow, multi-byte, and wide characters.

The locales we provide define the Hungarian locale as ‘HU_hu’. However, you may want to use either a UTF-8 encoding or ISO-Latin2 encoding for multi-byte characters, and these encodings are known by the names ‘utf8’ and ‘iso-8859-2’.

You combine the two encodings using a period, so the C locale ‘HU_hu.utf8’ denotes a Hungarian locale that encodes multi-byte characters as UTF-8 and ‘HU_hu.iso-8859-2’ denotes a Hungarian locale that encodes multi-byte characters using the ISO 8859-2 code page.