wctrans函数
概要:
#include <wctype.h>
wctrans_t wctrans(const char *property);
描述:
该函数构造一个wctrans_t类型的值,该值描述了由字符串参数property表示的宽字符间映射。
所有语言环境中字符串"tolower"、"toupper"都可以用作wctrans函数的property参数。
参数:
const char *property
表示宽字符间映射关系的字符串,例如:"tolower"、"toupper"。
返回值:
根据当前语言环境的LC_CTYPE类别,如果参数property表示有效的宽字符间映射,函数返回非0值,该值可用作towctrans函数的第二个参数;否则函数返回0。
范例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
/*函数wctrans范例*/
#include <locale.h>
#include <wchar.h>
#include <wctype.h>
void func(const char *property, const wchar_t *wStr)
{
wctrans_t desc;
if(desc = wctrans(property))
{
wprintf(L"%s是有效的宽字符映射值。\n", property);
wprintf(L"转换后的宽字符串:");
int i = 0;
while(wStr[i])
{
putwchar(towctrans(wStr[i++], desc));
}
putwchar(L'\n');
}
else
wprintf(L"%s不是有效的宽字符映射值。\n", property);
}
int main(void)
{
setlocale(LC_ALL, "");
const wchar_t wStr[] = L"中国(China)";
const char *propertyOne = "TOUPPER";
const char *propertyTwo = "toupper";
func(propertyOne, wStr);
func(propertyTwo, wStr);
return 0;
}
|
输出:
TOUPPER不是有效的宽字符映射值。
toupper是有效的宽字符映射值。
转换后的宽字符串:中国(CHINA)
注:使用ideone编译。
相关内容: