Функция strpbrk

Прототип функции strpbrk:

const char * strpbrk( const char * string1, const char * string2 );
      char * strpbrk(       char * string1, const char * string2 );

Заголовочный файл:

Название Язык
string.h С
cstring С++

Описание

Функция выполняет поиск первого вхождения в строку string1 любого из символов строки string2. Возвращает указатель на первое вхождение в string1 найденного символа, или — пустой указатель, если нет ни одного совпадения. Поиск не учитывает завершающий нуль-символ.

В Си эта функция определена как:

char * strpbrk( const char * str1, const char * str2);

Параметры:

  • string1
    Строка, в которой выполняется поиск.
  • string2
    Строка, содержащая искомые символы.

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

Указатель на первое вхождение в string1 найденного символа.
Если ни один из символов string2 не присутствует в строке string1, возвращается нулевой указатель.

Пример: исходный код программы

//пример использования функции strpbrk
#include <iostream>
#include <cstring>

int main()
{
  char str[] = "Police Academy";
  char key[] = "aeiou";

  std::cout << "Поиск гласных букв в строке " << """ << str << ""n";
  char * pch = strpbrk (str, key);                            // первый поиск

  while (pch != NULL)                                         // пока есть гласные буквы в строке
  {
      std::cout << *pch << " ";                               // печать гласного символа
    pch = strpbrk (pch+1,key);                                // поиск гласных букв
  }

  std::cout << "n";
  return 0;
}

Пример работы программы

CppStudio.com
Поиск гласных букв в строке «Police Academy»
o i e a e

В примере работал с буквами английского алфавита, так как функция некорректно выполняет поиск кириллических букв в кодировке UTF-8.

Автор: admin
Дата: 31.08.2012
Поделиться:

Оставить комментарий

Вы должны войти, чтобы оставить комментарий.