std:: strcspn
From cppreference.net
|
Определено в заголовке
<cstring>
|
||
|
std::
size_t
strcspn
(
const
char
*
dest,
const
char
*
src
)
;
|
||
Возвращает длину максимального начального сегмента байтовой строки, на которую указывает dest , состоящего только из символов, не найденных в байтовой строке, на которую указывает src .
Название функции означает "дополнительный промежуток".
Содержание |
Параметры
| dest | - | указатель на анализируемую нуль-терминированную байтовую строку |
| src | - | указатель на нуль-терминированную байтовую строку, содержащую символы для поиска |
Возвращаемое значение
Длина максимального начального сегмента, содержащего только символы, не найденные в байтовой строке, на которую указывает src .
Пример
Запустить этот код
#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) << " содержит недопустимые символы, начиная с позиции " << valid_len << '\n' << std::string(valid_len + 1, '-') << "^\n"; } }
Вывод:
"abcde312$#@" содержит недопустимые символы, начиная с позиции 8 ---------^
Смотрите также
|
возвращает длину максимального начального сегмента, который состоит
только из символов, найденных в другой байтовой строке (функция) |
|
|
возвращает длину максимального начального сегмента, который состоит
только из широких символов, не найденных в другой широкой строке (функция) |
|
|
находит первое вхождение любого символа из набора разделителей
(функция) |
|
|
находит первое вхождение символов
(публичная функция-член
std::basic_string<CharT,Traits,Allocator>
)
|
|
|
Документация C
для
strcspn
|
|