table of contents
std::strcspn(3) | C++ Standard Libary | std::strcspn(3) |
NAME¶
std::strcspn - std::strcspn
Synopsis¶
Defined in header <cstring>
std::size_t strcspn( const char *dest, const char *src );
Returns the length of the maximum initial segment of the byte string pointed
to by
dest, that consists of only the characters not found in byte string pointed
to by
src.
The function name stands for "complementary span".
Parameters¶
dest - pointer to the null-terminated byte string to be analyzed
src - pointer to the null-terminated byte string that contains the characters
to
search for
Return value¶
The length of the maximum initial segment that contains only
characters not found in
the byte string pointed to by src.
Example¶
// Run this code
#include <cstddef>
#include <cstring>
#include <iomanip>
#include <iostream>
#include <string>
int main()
{
std::string s = "abcde312$#@";
const char* invalid = "*$#";
const std::size_t valid_len = std::strcspn(s.c_str(), invalid);
if (valid_len != s.size())
{
std::cout << std::quoted(s)
<< " contains invalid chars starting at position "
<< valid_len << '\n'
<< std::string(valid_len + 1, '-') << "^\n";
}
}
Output:¶
"abcde312$#@" contains invalid chars starting at
position 8
---------^
See also¶
returns the length of the maximum initial segment that consists
strspn of only the characters found in another byte string
(function)
returns the length of the maximum initial segment that consists
wcscspn of only the wide not found in another wide string
(function)
strpbrk finds the first location of any character from a set of separators
(function)
find first occurrence of characters
find_first_of (public member function of
std::basic_string<CharT,Traits,Allocator>)
C documentation for
strcspn
2024.06.10 | http://cppreference.com |