Today, my team leader assigned me a task to design the localization. I feel surprised that I could get this workitem. Tonight I found some useful stuff that refer to the unicode and mbcs.
1.
httop://www.i18nguy.com/unicode/c-unicode.html
2. Unicode, MBCS and Generic text mappings
In order to allow your programs to be used in the international markets it is worth making your application Unicode or MBCS aware. The Unicode character set is a "wide character" (2 bytes per character) set that contains every character available in every language, including all technical symbols and special publishing characters. Multibytes character set (MBCS) uses either 1 or 2 bytes per character and is used for character sets that contain large number of different characters(eg Asian language character sets).
Which character set you use depends on the language and the operating system. Unicode requires more space than MBCS since each character is 2 bytes. It is also faster than MBCS and is used by Windows NT as standard, so non-Unicode strings pased to and from the operating system must be translated, incurring overhead. However, Unicode is not supported on Win95 and so MBCS may be a better choice in this situation. Note that if you wish to develop applications in the Windows CE environment then all applications must be compiled in Unicode.
http://www.codeproject.com/cpp/unicode.asp
3. Introduction to Software Translation for MFC
http://www.codeproject.com/cpp/introtolocalization.asp
4. Windows SetThreadLocale and CRT setlocale
http://www.codeproject.com/cpp/CRTSynch.asp
http://www.codeproject.com/string/stringtable.asp
http://www.codeproject.com/string/stringtable.asp