以下函数用于在字符类之间映射字符(字符音译)。如果字符的映射属于当前语言环境的字符类,函数将返回一个音译字符。这些函数是locale sensitive。
将大写字符转换为小写字符
将小写字符转换为大写字符
将大写宽字符转换为小写宽字符
将小写宽字符转换为大写宽字符
以下函数提供一种常规方式来执行字符音译:
定义字符映射
宽字符映射
有关 Unicode 字符串相关函数的更多信息,请参见Processing UTF-8 Strings。
示例 2-12 宽字符音译以下代码片段说明如何使用 towupper() 函数将 Unicode 宽字符音译为大写宽字符。
wint_t wc; int ret; setlocale(LC_ALL, "cs_CZ.UTF-8"); /* "\xc5\x99" is UTF-8 for LATIN SMALL LETTER R WITH CARON */ ret = mbtowc(&wc, "\xc5\x99", 2); if (ret == (size_t)-1) { /* Invalid character sequence. */ : } wprintf(L"'%c' is uppercase of '%c'.\n", towupper(wc), wc);
此示例将生成以下输出:
Ř 是 ř 的大写形式。