我正在寻找一种在Windows(C / C ++,而不是.NET)下对两个Unicode字符(char32)进行不敏感比较的方法。
我知道解决方案应该是语言环境感知的。
我想要一个不需要额外第三方库的解决方案。
答案 0 :(得分:2)
我首先想到的是,您应该使用参数LOCALE_INVARIANT
和NORM_IGNORECASE
查找CompareStringEx
。
答案 1 :(得分: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)