std::wmemchr
From cppreference.com
C++
Feature test macros (C++20)
Concepts library (C++20)
Metaprogramming library (C++11)
Ranges library (C++20)
Filesystem library (C++17)
Concurrency support library (C++11)
Execution control library (C++26)
Text processing library
Regular expressions library (C++11)
Formatting library (C++20)
(C++17)
(C++17)
(C++17)
(C++17)
(C++17)
(C++26)
Null-terminated wide strings
(C++11)
(C++11)(C++11)
Defined in header
<cwchar>
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.
Contents
[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
Run this code
#include <clocale> #include <cwchar> #include <iostream> #include <locale> 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:
Found '许' at position 14
[edit] See also
C documentation for wmemchr