Defined in header <string.h> | ||
|---|---|---|
size_t strcspn( const char *dest, const char *src ); |
Returns the length of the maximum initial segment of the null-terminated byte string pointed to by dest, that consists of only the characters not found in the null-terminated byte string pointed to by src.
The behavior is undefined if either dest or src is not a pointer to a null-terminated byte string.
| 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 |
The length of the maximum initial segment that contains only characters not found in the null-terminated byte string pointed to by src
The function name stands for "complementary span" because the function searches for characters not found in src, that is the complement of src.
#include <string.h>
#include <stdio.h>
int main(void)
{
const char *string = "abcde312$#@";
const char *invalid = "*$#";
size_t valid_len = strcspn(string, invalid);
if(valid_len != strlen(string))
printf("'%s' contains invalid chars starting at position %zu\n",
string, valid_len);
}Output:
'abcde312$#@' contains invalid chars starting at position 8
| returns the length of the maximum initial segment that consists of only the characters found in another byte string (function) |
|
|
(C95) | returns the length of the maximum initial segment that consists of only the wide chars not found in another wide string (function) |
| finds the first location of any character in one string, in another string (function) |
|
C++ documentation for strcspn |
|
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/c/string/byte/strcspn