std::wmemchr - cppreference.com (original) (raw)

| Defined in header | | | | --------------------------------------------------------------------------------------------------------------- | --- | | | const wchar_t* wmemchr( const wchar_t* ptr, wchar_t ch, std::size_t count ); | (1) | | | wchar_t* wmemchr( wchar_t* ptr, wchar_t ch, std::size_t count ); | (2) | |

Locates the first occurrence of wide character ch in the initial count wide characters of the wide character array pointed to by ptr.

If count is zero, the function returns a null pointer.

[edit] Parameters

ptr - pointer to the wide character array to be examined
ch - wide character to search for
count - number of wide characters to examine

[edit] Return value

Pointer to the location of the wide character, or a null pointer if no such character is found.

[edit] Example

#include #include #include #include   int main() { const wchar_t str[] = L"诺不轻信,故人不负我\0诺不轻许,故我不负人。"; wchar_t target = L'许'; const std::size_t sz = sizeof str / sizeof str; if (const wchar_t result = std::wmemchr(str, target, sz)) { std::setlocale(LC_ALL, "en_US.utf8"); std::wcout.imbue(std::locale("en_US.utf8")); std::wcout << "Found '" << target << "' at position " << result - str << '\n'; } }

Possible output:

[edit] See also