📅  最后修改于: 2023-12-03 15:29:41.743000             🧑  作者: Mango
wmemchr()函数是C/C++中的函数库函数之一,它在给定的wide-character字符串中搜索某个字符的第一个匹配。
wmemchr()函数的定义如下:
wchar_t *wmemchr(const wchar_t *str, wchar_t c, size_t n);
其中,str是要搜索的字符串,c是要搜索的字符,n是要搜索的字符数。
该函数会在str中查找前n个字符,返回第一个匹配c的指针,如果未找到,则返回NULL。
#include <wchar.h>
#include <stdio.h>
int main()
{
wchar_t str[] = L"Hello, World!";
wchar_t *pch = wmemchr(str, L'l', wcslen(str));
if (pch != NULL)
{
wprintf(L"Found '%lc' at position %d\n", *pch, pch - str);
}
else
{
wprintf(L"Did not find the character\n");
}
return 0;
}
代码中声明了一个wide-character的字符串str,然后使用wmemchr()函数在字符串中搜索字符'l'的第一个匹配。如果找到,输出该字符的位置;否则输出未找到该字符。
wmemchr()函数是在wide-character的字符串中查找某个字符的第一个匹配,使用时需要保证字符集一致(比如ASCII和UTF-8字符集),并且,需要注意字符数的限制和指针的使用。