在 Oracle Solaris 中进行应用程序国际化和本地化

退出打印视图

更新时间: 2014 年 7 月
 
 

字符音译函数

以下函数用于在字符类之间映射字符(字符音译)。如果字符的映射属于当前语言环境的字符类,函数将返回一个音译字符。这些函数是locale sensitive

tolower()

将大写字符转换为小写字符

toupper()

将小写字符转换为大写字符

towlower()

将大写宽字符转换为小写宽字符

towupper()

将小写宽字符转换为大写宽字符

以下函数提供一种常规方式来执行字符音译:

wctrans()

定义字符映射

towctrans()

宽字符映射

有关 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);

此示例将生成以下输出:

Ř 是 ř 的大写形式。