UNICODE常用字符串函数。

来源:互联网 发布:帝国冲锋队 盔甲 淘宝 编辑:程序博客网 时间:2024/05/01 22:16

Windows CE是一种Unicode环境,使用wchar_t来描述字符型变量。注意,这并不是说它不支持char型字符,char* p = "你好"同样是合法的,只不过在显示的时候必须转换成wchar_t类型。

来看看WinCE下的字符串操作函数:
wcscat
wcschr
wcscmp
wcscpy
wcscspn
wcslen
wcsncat
wcsncmp
wcsncpy
wcsnlen
wcspbrk
wcsrchr
wcsstr
wcstod
wcstoi64
wcstok
wcstol
wcstombs
wcstoui64
wcstoul
_wcsdup
_wcsicmp
_wcslwr
_wcsnicmp
_wcsnset
_wcsrev
_wcsupr

上面罗列的函数中,有些是平时不太用到或者第一感会想到自己写一个小算法实现的。不过很多公司在笔试的时候,喜欢让应聘者来实现以上这些函数:)

以下这些函数一般很少用:

size_t wcscspn( const wchar_t *string, const wchar_t *strCharSet )
该函数的作用是当字符串strCharSet包含在string时,求得第一个字符的位置。

wchar_t *wcspbrk( const wchar_t *string, const wchar_t *strCharSet )
该函数的作用是求得strCharSet中的任意一个字符在string的最初匹配位置的指针。

wchar_t *wcstok( wchar_t *strToken, const wchar_t *strDelimit )
该函数的作用是查找由在第二个串中指定的分界符分隔开的单词。首次调用时,strToken必须指向要分解的字符串,随后调用要把strToken设成NULL;wcstok在strToken中查找包含在

strDelimit中的字符并用NULL('/0')来替换,直到找遍整个字符串;返回指向下一个标记串;当没有标记串时则返回空字符NULL。 

size_t wcstombs( char *mbstr, const wchar_t *wcstr, size_t count )
该函数将宽字符串转化为窄字符串。微软另外提供的字符转换的函数有MultiByteToWideChar和WideCharToMultiByte。

wchar_t *_wcsdup( const wchar_t *strSource )
该函数复制一个字符串。

int _wcsicmp( const wchar_t *string1, const wchar_t *string2 )
该函数比较字符串,但不区分大小写。类似的函数还有_wcsnicmp。

wchar_t *_wcslwr( wchar_t *string )
该函数将字符串转化为小写。

wchar_t *_wcsrev( wchar_t *string )
该函数逆序一个字符串。

wchar_t *_wcsupr( wchar_t *string )
该函数将字符串转化为大写。

微软还有一系列_tcs打头的函数,其实是用了宏(UNICODE)来区分编译环境。如下,我们会很明白:
#ifdef  UNICODE
#define _tcscat     wcscat
#else
#define _tcscat     strcat
#endif

原创粉丝点击