C++官网参考链接:https://cplusplus.com/reference/cwchar/wmemchr/
函数
wmemchr
const wchar_t* wmemchr (const wchar_t* ptr, wchar_t wc, size_t num);
wchar_t* wmemchr (wchar_t* ptr, wchar_t wc, size_t num);
在宽字符块中定位字符
在ptr所指向的块的第一个num个宽字符中查找wc的第一次出现,并返回指向它的指针(如果没有找到则返回空指针)。
注意,与wcschr不同的是,该函数在找到空宽字符后不会停止比较。
这是memchr(
形参
ptr
指向要查找的wchar_t元素数组的指针。
wc
要定位的宽字符。
num
wchar_t类型要比较的元素数量。
size_t是无符号整型。
返回值
指向ptr所指向的数组中wc的第一次出现的一个指针。
如果没有找到wc,函数将返回一个空指针。
可移植性
在C语言中,这个函数只被声明为:
wchar_t * wmemchr (const wchar_t *, wchar_t, size_t);
而不是C++中提供的两个重载版本。
用例
/* wmemchr example */
#include
int main ()
{
wchar_t * pwc;
wchar_t wcs[] = L"Example wide string";
pwc = wmemchr (wcs, L'p', wcslen(wcs));
if (pwc!=NULL)
wprintf (L"'p' found at position %d.\n", pwc-wcs+1);
else
wprintf (L"'p' not found.\n");
return 0;
}
输出:
