Прототип функции 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
o i e a e
В примере работал с буквами английского алфавита, так как функция некорректно выполняет поиск кириллических букв в кодировке UTF-8.