Namespaces
Variants

wcsstr

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

Содержание

Параметры

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

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

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

Пример

#include <stdio.h>
#include <locale.h>
#include <wchar.h>
int main(void)
{
    setlocale(LC_ALL, "ru_RU.UTF-8");
    wchar_t str[5][64] = {
        L"Строка, где есть подстрока 'но'.",
        L"Строка, где такой подстроки нет.",
        L"Он здесь.",
        L"Здесь он.",
        L"Его нет."
    };
    for (size_t i = 0; i < 5; ++i) {
        if (wcsstr(str[i], L"но")) {
            wprintf(L"%ls\n", str[i]);
        }
    }
}

Вывод:

Строка, где есть подстрока 'но'.

Ссылки

  • Стандарт C11 (ISO/IEC 9899:2011):
  • 7.29.4.5.6 Функция wcsstr (стр. 437)
  • Стандарт C99 (ISO/IEC 9899:1999):
  • 7.24.4.5.6 Функция wcsstr (стр. 383)

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

(C95)
находит первое вхождение широкого символа в широкой строке
(функция)
(C95)
находит последнее вхождение широкого символа в широкой строке
(функция)