wcsstr

From cppreference.com
< clrm; | stringlrm; | wide
Defined in header <wchar.h>
wchar_t* wcsstr( const wchar_t* dest, const wchar_t* src );
(since C95)

Finds the first occurrence of the wide string src in the wide string pointed to by dest. The terminating null characters are not compared.

Parameters

dest - pointer to the null-terminated wide string to examine
src - pointer to the null-terminated wide string to search for

Return value

Pointer to the first character of the found substring in dest, or NULL if no such substring is found. If src points to an empty string, dest is returned.

Example

#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]);
        }
    }
}

Output:

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

References

  • C11 standard (ISO/IEC 9899:2011):
  • 7.29.4.5.6 The wcsstr function (p: 437)
  • C99 standard (ISO/IEC 9899:1999):
  • 7.24.4.5.6 The wcsstr function (p: 383)

See also

(C95)
finds the first occurrence of a wide character in a wide string
(function)
finds the last occurrence of a wide character in a wide string
(function)