strcspn()

Вычислить количество символов строки, не входящих в заданную последовательность символов

Прототип:

#include <string.h>
size_t strcspn( const char *str,
const char *charset );

Аргументы:

str
Строка, в которой требуется произвести поиск.
charset
Последовательность символов, которые требуется найти.

Библиотека:

libc

Описание:

Функция strcspn() выполняет поиск первого вхождения в строку str любого из символов строки charset и возвращает количество символов до найденного первого вхождения.

Поиск учитывает и завершающий NUL-символ, поэтому, если функция возвращает длину строки str, это значит, что ни один из символов строки charset не входит в состав str.

Возвращаемое значение:

Количество символов в исходной строке str до первого встретившегося элемента из последовательности charset.

Примеры:

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main( void )
{
printf( "%d\n", strcspn( "abcbcadef", "cba" ) );
printf( "%d\n", strcspn( "xxxbcadef", "cba" ) );
printf( "%d\n", strcspn( "123456789", "cba" ) );
return (EXIT_SUCCESS);
}

Код генерирует следующий вывод:

$ ./a.out 0 3 9

Классификация:

ANSI, POSIX 1003.1

Безопасность использования
Точка остановки потока
Нет
Обработчик прерываний
Да
Обработчик сигналов
Да
В потоке
Да

Тематические ссылки:

memchr(), strchr(), strpbrk(), strrchr(), strspn(), strstr(), strtok(), strtok_r(), wcschr(), wcscspn(), wcspbrk(), wcsrchr(), wcsspn(), wcsstr(), wcstok()




Предыдущий раздел: Описание API системной библиотеки