Spec-Zone.ru › C++

std::strcspn

Определено в заголовке <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)
                  << " contains invalid chars starting at position "
                  << valid_len << '\n'
                  << std::string(valid_len + 1, '-') << "^\n";
    }
}

Вывод:

"abcde312$#@" contains invalid chars starting at position 8
---------^

См. также

strspn
возвращает длину максимального начального сегмента, состоящего
только из символов, найденных в другой байтовой строке
(функция)
wcscspn
возвращает длину максимального начального сегмента, состоящего
только из символов, не найденных в другой широкой строке
(функция)
strpbrk
находит первое расположение любого символа из набора разделителей
(функция)
find_first_of
найти первое вхождение символов
(публичный член-функция std::basic_string<CharT,Traits,Allocator>)
C документация для strcspn

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/string/byte/strcspn

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API