Make Your Program International
You can make your program adapt to different
cultural environments by using locales and taking advantage of
other features provided by IBM C and C++ Compilers to support
internationalization.
To make your program international, complete
the following steps:
- Isolate your resources from the executable
code at the source level and at the module level.
By isolating your resources at the source level, they can
be translated easily into many languages. If the resource
is isolated from the executable code at the load module
level, it is possible for the appropriate language
version to be loaded at execution time.
- Respect your user's culture and
conventions by using setlocale to select the appropriate locale
categories during program
execution.
The IBM C and C++ Compilers localization model provides the
standard locale categories, each of which defines one
aspect of the cultural environment, as well as some IBM
extensions. The default environment in which programs run
is the POSIX C Locale, which
conforms to US English conventions. IBM C and C++ Compilers
includes a large number of additional locales that define
many national environments. You can use any of these, or
modify one to create your own.
- Code your program to use the IBM C and C++
Compilers locale-sensitive interfaces provided by functions in the runtime library.
These functions conform to the XPG4 standard. Call
functions to select locale categories, and to manipulate
characters, date and time data, monetary and numeric
quantities, and other locale-sensitive data, as required
by your cultural environment.
Note: IBM C and C++ Compilers also supports the C++
Localization library, as recommended by the ANSI
committee in the December 1996 draft.
- To convert data from one code set to
another, use the IBM C and C++ Compilers code set conversion
utility and functions. IBM C and C++ Compilers provides code
set converters that allow you to convert to and from many
different coded character sets, including Unicode.
For more information on designing an
internationalized application, see IBM's "National
Language Design Guide - Designing Internationalized Products,
SE09-8001".

Internationalization
What is a
Resource?
Localization
and Locales

Select a Locale
Convert
Character Coding
Supply DLLs for
Locale Handling

Locale
Categories
Locale-Sensitive
Interfaces