strcspn - cppreference.com (original) (raw)

| | | | | ------------------------------------------------------------------------------------ | | | | 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.

[edit] 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

[edit] Return value

The length of the maximum initial segment that contains only characters not found in the null-terminated byte string pointed to by src

[edit] Notes

The function name stands for "complementary span" because the function searches for characters not found in src, that is the complement of src.

[edit] Example

#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

[edit] References

[edit] See also

| | returns the length of the maximum initial segment that consists of only the characters found in another byte string (function) [edit] | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | | returns the length of the maximum initial segment that consists of only the wide chars not found in another wide string (function) [edit] | | | finds the first location of any character in one string, in another string (function) [edit] | | |