Internationalization and localization tools


Character Manipulation Function

int __isascii(int c);

int isascii(int c);

int iswascii(wint_t c);

int _istascii(_TINT c);

Internationalization (I18n) Function Overview

The functions __isascii and isascii test for an ASCII character (in the range 0x00 - 0x7F), returning a non-zero value if true; else 0.

On Windows platforms only, iswascii is the wide-character version that tests a wide-character parameter. There is no ANSI wide-character version. There is no wide character support on ANSI platforms.

_istascii is the Windows-only Generic version of isascii; with the _MBCS or _UNICODE compiler flags determining its mapping to either isascii or iswascii.

I18n Issues

Use the appropriate version of the function as required for internationalization support, noting the following:

On ANSI platforms the single-byte versions are not affected by the current locale and should not be used for characters outside the ASCII range.

Since there is no ANSI wide character version of isascii, convert wide characters to single-byte characters before calling isascii.

The Windows functions __isascii and isascii do use the LC_CTYPE setting of the user's current locale and can be used for multibyte characters. Therefore, prior to calling these functions, ensure that the locale is set properly.

Recommended Replacements*

*If you're already using the recommended function, see I18n Issues for other reasons why Globalyzer is detecting the function.

Character Manipulation Functions

 

Lingoport internationalization and localization services and software