Пространства имён
Варианты
Действия

std::strchr

Материал из cppreference.com
< cpp‎ | string‎ | byte
 
 
 
Однобайтовые строки с завершающим нулём
Функции
Манипуляции с символами
Преобразование в числовые форматы
(C++11)(C++11)
(C++11)(C++11)
Манипуляции со строками
Проверка строки
Манипуляции с памятью
Разное
 
Определено в заголовочном файле <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 << "Найден '" << target
                  << "' начиная с '" << result << "'\n";
 
        // Инкрементируем result, иначе мы найдём target в том же месте.
        ++result;
    }
}

Вывод:

Найден 'T' начиная с 'Try not. Do, or do not. There is no try.'
Найден 'T' начиная с 'There is no try.'

[править] Смотрите также

ищет в массиве первое вхождение символа
(функция) [править]
находит первое вхождение заданной подстроки
(public функция-элемент std::basic_string<CharT,Traits,Allocator>) [править]
находит первое вхождение широкого символа в широкой строке
(функция) [править]
находит последнее вхождение символа
(функция) [править]
находит первое местоположение любого символа из набора разделителей
(функция) [править]