close
Пространства имён
Варианты
Действия

std::wmemchr

Материал из cppreference.com
 
 
 
Широкие строки с завершающим нулём
Функции
Операции с символами
Преобразования в числовые форматы
(C++11)(C++11)
(C++11)(C++11)
Операции со строками
Операции с массивами
 
<tbody> </tbody>
Определено в заголовочном файле <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 равно нулю, функция возвращает нулевой указатель.

Параметры

ptr указатель на массив широких символов, который необходимо проверить
ch широкий символ для поиска
count количество широких символов для проверки

Возвращаемое значение

Указатель на расположение широкого символа или нулевой указатель, если такой символ не найден.

Пример

#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 << L"Найден '" << target << L"' в позиции " << result - str << '\n';
    }
}

Возможный вывод:

Найден '许' в позиции 14

Смотрите также

ищет в массиве первое вхождение символа
(функция) [править]
находит первое вхождение символа
(функция) [править]
находит первое вхождение широкого символа в широкой строке
(функция) [править]
находит первый элемент, соответствущий определённым критериям
(шаблон функции) [править]