Spec-Zone.ru › C++

std::strchr

Определён в заголовочном файле <cstring>
const char* strchr( const char* str, int ch );
      char* strchr(       char* str, int ch );

Находит первое вхождение символа static_cast<char>(ch) в байтовой строке, на которую указывает str.

Завершающий нулевой символ считается частью строки и может быть найден, если искать '\0'.

Параметры

str - указатель на завершающуюся нулевым символом байтовую строку для анализа
ch - символ для поиска

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

Указатель на найденный символ в str или нулевой указатель, если такой символ не найден.

Пример

#include <cstring>
#include <iostream>

int main()
{
    const char* str = "Try not. Do, or do not. There is no try.";
    char target = 'T';
    const char* result = str;

    while ((result = std::strchr(result, target)) != nullptr)
    {
        std::cout << "Found '" << target
                  << "' starting at '" << result << "'\n";

        // Increment result, otherwise we'll find target at the same location
        ++result;
    }
}

Вывод:

Found 'T' starting at 'Try not. Do, or do not. There is no try.'
Found 'T' starting at 'There is no try.'

См. также

memchr
выполняет поиск первого вхождения символа в массиве
(функция)
find
находит первое вхождение заданной подстроки
(открытая функция-член std::basic_string<CharT,Traits,Allocator>)
wcschr
находит первое вхождение широкого символа в широкой строке
(функция)
strrchr
находит последнее вхождение символа
(функция)
strpbrk
находит первое вхождение любого символа из набора разделителей
(функция)
Документация по C для strchr

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/string/byte/strchr

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API