2010-03-08 122 views

回答

2

我的第一个想法是,你应该查询CompareStringEx及其参数LOCALE_INVARIANTNORM_IGNORECASE

0

哎呀,你想比较char32s。忽略我的帖子。

我原来的答复

为后人:

您可以使用

_wcsicmp(const wchar_t *string1, const wchar_t *string2) or 

_mbsicmp(const unsigned char_t *string1, const unsigned char *string2) 

前者比较宽字符 (通常是UTF-16),后者 比较多字节字符 (通常是UTF-8)。您需要设置使用

_setmbcp(int codepage) 
+0

的char32的 代码页是32位(UTF-32),为wchar_t是16位(UTF-16-LE)。 – sorin 2010-03-08 16:23:47

+0

对于所有实际用途,wchar_t都是UCS-2。宽字符串函数不会将宽字符串视为可变字符长度;这是拥有它们的关键。 – 2010-03-08 18:58:00

相关问题