table of contents
std::strpbrk(3) | C++ Standard Libary | std::strpbrk(3) |
NAME¶
std::strpbrk - std::strpbrk
Synopsis¶
Defined in header <cstring>
const char* strpbrk( const char* dest, const char* breakset );
char* strpbrk( char* dest, const char* breakset );
Scans the null-terminated byte string pointed to by dest for any character
from the
null-terminated byte string pointed to by breakset, and returns a pointer to
that
character.
Parameters¶
dest - pointer to the null-terminated byte string to be analyzed
breakset - pointer to the null-terminated byte string that contains the
characters
to search for
Return value¶
Pointer to the first character in dest, that is also in breakset,
or null pointer if
no such character exists.
Notes¶
The name stands for "string pointer break", because it
returns a pointer to the
first of the separator ("break") characters.
Example¶
// Run this code
#include <cstring>
#include <iomanip>
#include <iostream>
int main()
{
const char* str = "hello world, friend of mine!";
const char* sep = " ,!";
unsigned int cnt = 0;
do
{
str = std::strpbrk(str, sep); // find separator
std::cout << std::quoted(str) << '\n';
if (str)
str += std::strspn(str, sep); // skip separator
++cnt; // increment word count
} while (str && *str);
std::cout << "There are " << cnt << "
words\n";
}
Output:¶
" world, friend of mine!"
", friend of mine!"
" of mine!"
" mine!"
"!"
There are 5 words
See also¶
returns the length of the maximum initial segment that consists
strcspn of only the characters not found in another byte string
(function)
strtok finds the next token in a byte string
(function)
strchr finds the first occurrence of a character
(function)
finds the first location of any wide character in one wide string, in
wcspbrk another wide string
(function)
C documentation for
strpbrk
2024.06.10 | http://cppreference.com |