std::wcspbrk
Определён в заголовочном файле <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, или нулевой указатель, если такой символ отсутствует.
Примечания
Название расшифровывается как «указатель на строку широких символов — разделитель», поскольку функция возвращает указатель на первый символ-разделитель («разрыв»).
Пример
#include <cwchar>
#include <iomanip>
#include <iostream>
int main()
{
const wchar_t* str = L"Hello world, friend of mine!";
const wchar_t* sep = L" ,!";
unsigned int cnt = 0;
do
{
str = std::wcspbrk(str, sep); // find separator
std::wcout << std::quoted(str) << L'\n';
if (str)
str += std::wcsspn(str, sep); // skip separator
++cnt; // increment word count
} while (str && *str);
std::wcout << L"There are " << cnt << L" words\n";
}
Вывод:
" world, friend of mine!" ", friend of mine!" " of mine!" " mine!" "!" There are 5 words
См. также
| возвращает длину максимального начального сегмента, состоящего только из широких символов, не найденных в другой широкостроковой строке (функция) |
|
| находит первое вхождение широкого символа в широкостроковой строке (функция) |
|
| находит первое расположение любого символа из набора разделителей (функция) |
|
Документация по C для wcspbrk |
|
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/string/wide/wcspbrk