std::wmemchr
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) |
Находит первое вхождение широкого символа ch в начальных count широких символах массива широких символов, на который указывает ptr.
Если count равно нулю, функция возвращает указатель на null.
Параметры
| ptr | - | указатель на массив широких символов для проверки |
| ch | - | искомый широкий символ |
| count | - | количество широких символов для проверки |
Возвращаемое значение
Указатель на местоположение широкого символа или указатель на null, если такой символ не найден.
Пример
#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';
}
}Возможный вывод:
Found '许' at position 14
См. также
| ищет первое вхождение символа в массив (функция) |
|
| находит первое вхождение символа (функция) |
|
| находит первое вхождение широкого символа в широкую строку (функция) |
|
|
(C++11) |
находит первый элемент, удовлетворяющий определенным критериям (шаблон функции) |
Документация C для wmemchr |
|
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/string/wide/wmemchr