wcspbrk
出自 cppreference.cn
定义于头文件 <wchar.h> |
||
wchar_t *wcspbrk( const wchar_t *dest, const wchar_t *str ); |
(1) | (C95 起) |
/*QWchar_t*/ *wcspbrk( /*QWchar_t*/ *dest, const wchar_t *str ); |
(2) | (C23 起) |
1) 在
dest
所指向的宽字符串中,查找首个同时也在 str
所指向的宽字符串中出现的字符。2) 等价于 (1) 的类型泛型函数。设
T
为非限定的宽字符对象类型。- 若
dest
类型为 const T*,则返回类型为 const wchar_t*。 - 否则,若
dest
类型为 T*,则返回类型为 wchar_t*。 - 否则,行为未定义。
- 若
目录 |
[编辑] 参数
dest | - | 指向要分析的空终止宽字符串的指针 |
src | - | 指向包含要搜索字符的空终止宽字符串的指针 |
[编辑] 返回值
指向 dest
中首个同时也在 str
中出现的字符的指针,若不存在这种字符则为空指针。
[编辑] 注解
名称代表 "宽字符字符串指针断点 (wide character string pointer break)",因为其返回指向分隔符(“断点”)字符的首个字符的指针。
[编辑] 示例
运行此代码
#include <stdio.h> #include <wchar.h> int main(void) { const wchar_t* str = L"Hello world, friend of mine!"; const wchar_t* sep = L" ,!"; unsigned int cnt = 0; do { str = wcspbrk(str, sep); // find separator if (str) str += wcsspn(str, sep); // skip separator ++cnt; // increment word count } while (str && *str); wprintf(L"There are %u words.\n", cnt); }
输出
There are 5 words.