Internationalization and localization tools


Programming Language Context

C++ Rule Sets

Globalyzer supports several C++ rule sets. These have been designed to scan for locale-sensitive methods that are specific to a corresponding C/C++ target platform.

ANSI UTF-8 Rule Set

This rule set should be used for UNIX/Linux platforms or for cross-platform development, where ANSI functions are primarily used, and where the desired encoding for Unicode is UTF-8, a multibyte character representation.

Globalyzer looks for functions that can cause problems in a UTF-8 implementation, such as locale-sensitive functions, including date, time, number, currency, and character manipulation routines. In addition, with the ANSI UTF-8 rule set, Globalyzer scans for functions where wide characters are required or where there is no support for multibyte characters, and recommends a replacement function if available.

Be sure to look at both the I18n Issues section as well as the Recommended Replacements section of the specific function help. Often there is no alternate function to use, but there are internationalization issues that should be addressed.

ANSI UTF-16 Rule Set

This rule set should be used for UNIX/Linux platforms or for cross-platform development, where ANSI functions are primarily used, and where the desired encoding for Unicode is UTF-16 or UTF-32, using the wchar_t data type for wide character representation.

Globalyzer looks for functions that can cause problems in a UTF-16 or UTF-32 implementation, such as locale-sensitive functions, including date, time, number, currency, and character manipulation routines. In addition, with the ANSI UTF-16 rule set, Globalyzer scans for functions where single-byte or multibyte characters are required, and recommends a wide-character replacement function if available.

Be sure to look at both the I18n Issues section as well as the Recommended Replacements section of the specific function help. Often there is no alternate function to use, but there are internationalization issues that should be addressed.

Microsoft Windows MBCS Rule Set

This rule set should be used for Windows-only platforms, where Windows functions (which may be compatible with ANSI C) are used, and where the desired encoding is MBCS, which uses one or two bytes to represent a character. The _MBCS compiler flag should be set when using this rule set.

Globalyzer looks for functions that can cause problems in a Windows MBCS implementation, such as locale-sensitive functions, including date, time, number, currency, and character manipulation routines. In addition, with the Windows MBCS rule set, Globalyzer scans for functions where wide or only single-byte characters are required, and recommends a multibyte-character replacement function if available.

Be sure to look at both the I18n Issues section as well as the Recommended Replacements section of the specific function help. Often there is no alternate function to use, but there are internationalization issues that should be addressed.

See the Support for Multibyte Character Sets (MBCS) for more information.

Microsoft Windows Unicode Rule Set

This rule set should be used for Windows-only platforms, where Windows functions (which may be compatible with ANSI C) are used, and where the desired encoding for Unicode is UTF-16, a double-byte character representation. The _UNICODE compiler flag should be set when using this rule set. In addition, if Windows 95/98/ME are a target platform, the Microsoft Layer for Unicode library can be used as the interface between the Unicode application and the non-Unicode OS. See the MSDN Libary for more information on supporting Unicode on these earlier versions of Windows.

Globalyzer looks for functions that can cause problems in a Windows UTF-16 implementation, such as locale-sensitive functions, including date, time, number, currency, and character manipulation routines. In addition, with the Windows Unicode rule set, Globalyzer scans for functions where single-byte or multibyte characters are required, and recommends a wide-character function replacement if available.

Be sure to look at both the I18n Issues section as well as the Recommended Replacements section of the specific function help. Often there is no alternate function to use, but there are internationalization issues that should be addressed.

See Support for Unicode for more information.

Microsoft Windows Generic Rule Set

This rule set should be used for Windows-only platforms, where the desired character encoding will depend on a compiler flag setting to allow for switching between MBCS and UTF-16 Unicode character representation. In addition, if Windows 95/98/ME are a target platform, the Microsoft Layer for Unicode library can be used as the interface between the Unicode application (i.e. when the compiler flag is set to _UNICODE) and the non-Unicode OS. See the MSDN Library for more information on supporting Unicode on these earlier versions of Windows.

Globalyzer looks for functions that can cause problems in a Windows Generic implementation, such as locale-sensitive functions, including date, time, number, currency, and character manipulation routines. In addition, with the Windows Generic rule set, Globalyzer scans for functions where there is a corresponding Windows Generic function that should be used.

Be sure to look at both the I18n Issues section as well as the Recommended Replacements section of the specific function help. Often there is no alternate function to use, but there are internationalization issues that should be addressed.

See Using Generic-Text Mappings for more information.

Cross Platform UTF-8 Rule Set

This rule set should be used for cross-platform development, when you are unsure if any platform-specific methods are being used. The target Unicode encoding when using this rule set is UTF-8, a multibyte character representation.

Globalyzer looks for functions that can cause problems in a cross-platform UTF-8 implementation, including all of the potentially problematic UTF-8 methods, as well as Windows or Unix specific methods.

Be sure to look at both the I18n Issues section as well as the Recommended Replacements section of the specific function help. Often there is no alternate function to use, but there are internationalization issues that should be addressed.

Cross Platform UTF-16 Rule Set

This rule set should be used for cross-platform development, when you are unsure if any platform-specific methods are being used. The target Unicode encoding when using this rule set is UTF-16 or UTF-32.

Globalyzer looks for functions that can cause problems in a cross-platform UTF-16 or UTF-32 implementation, including all of the potentially problematic UTF-16 or UTF-32 methods, as well as Windows or Unix specific methods.

Be sure to look at both the I18n Issues section as well as the Recommended Replacements section of the specific function help. Often there is no alternate function to use, but there are internationalization issues that should be addressed.

 

 Locale-Sensitive C++ Methods

 

Lingoport internationalization and localization services and software