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

std::wcspbrk

Материал из cppreference.com
< cpp‎ | string‎ | wide
 
 
 
Широкие строки с завершающим нулём
Функции
Операции с символами
Преобразования в числовые форматы
(C++11)(C++11)
(C++11)(C++11)
Операции со строками
Операции с массивами
 
Определено в заголовочном файле <cwchar>
const wchar_t* wcspbrk( const wchar_t* dest, const wchar_t* src );
      wchar_t* wcspbrk(       wchar_t* dest, const wchar_t* src );

Находит первый символ в широкой строке, на которую указывает dest, который также находится в широкой строке, на которую указывает src.

Содержание

[править] Параметры

dest указатель на широкую строку с нулевым завершающим символом, подлежащую анализу
src указатель на широкую строку с нулевым завершающим символом, содержащую символы для поиска

[править] Возвращаемое значение

Указатель на первый символ в dest, который также находится в src, или нулевой указатель, если такого символа не существует.

[править] Примечание

Название означает "wide character string pointer break - указатель на разрыв строки широких символов", поскольку она возвращает указатель на первый из символов-разделителей ("разрыв").

[править] Пример

#include <cwchar>
#include <iomanip>
#include <iostream>
 
int main()
{
    const wchar_t* str = L"Привет мир, мой друг!";
    const wchar_t* sep = L" ,!";
 
    std::wcout.imbue(std::locale("en_US.utf8"));
    unsigned int cnt = 0;
    do
    {
        str = std::wcspbrk(str, sep); // ищет разделитель
        std::wcout << std::quoted(str) << L'\n';
        if (str)
            str += std::wcsspn(str, sep); // пропускает разделитель
        ++cnt; // увеличивает счётчик слов
    } while (str && *str);
 
    std::wcout << L"Есть " << cnt << L" слова\n";
}

Вывод:

" world, friend of mine!"
", friend of mine!"
" of mine!"
" mine!"
"!"
There are 5 words

[править] Смотрите также

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