Namespaces
Variants

wcspbrk

From cppreference.net
< c ‎ | string ‎ | wide
Определено в заголовочном файле <wchar.h>
wchar_t * wcspbrk ( const wchar_t * dest, const wchar_t * str ) ;
(1) (начиная с C95)
/*QWchar_t*/ * wcspbrk ( /*QWchar_t*/ * dest, const wchar_t * str ) ;
(2) (начиная с C23)
1) Находит первый символ в широкой строке, на которую указывает dest , который также присутствует в широкой строке, на которую указывает str .
2) Обобщенная по типам функция, эквивалентная (1) . Пусть T будет неприведенным типом объекта широкого символа.
  • Если dest имеет тип const T * , возвращаемый тип будет const wchar_t * .
  • Иначе, если dest имеет тип T * , возвращаемый тип будет wchar_t * .
  • В противном случае поведение не определено.
Если макрос-определение каждой из этих обобщенных функций подавлено для доступа к реальной функции (например, если используется ( wcspbrk ) или указатель на функцию), становится видимым объявление реальной функции (1) .

Содержание

Параметры

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

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

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

Примечания

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

Пример

#include <stdio.h>
#include <wchar.h>
int main(void)
{
    const wchar_t* str = L"Hello world, friend of mine!";
    const wchar_t* sep = L" ,!";
    unsigned int cnt = 0;
    do {
       str = wcspbrk(str, sep); // find separator
       if (str) str += wcsspn(str, sep); // skip separator
       ++cnt; // increment word count
    } while (str && *str);
    wprintf(L"There are %u words.\n", cnt);
}

Вывод:

There are 5 words.

Ссылки

  • Стандарт C11 (ISO/IEC 9899:2011):
  • 7.29.4.5.3 Функция wcspbrk (стр. 436)
  • Стандарт C99 (ISO/IEC 9899:1999):
  • 7.24.4.5.3 Функция wcspbrk (стр. 382)

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

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