Namespaces
Variants

std:: strcspn

From cppreference.net
헤더에 정의됨 <cstring>
std:: size_t strcspn ( const char * dest, const char * src ) ;

dest 가 가리키는 바이트 문자열의 최초 세그먼트 중 src 가 가리키는 바이트 문자열에 포함되지 않은 문자로만 구성된 최대 길이를 반환합니다.

함수 이름은 "complementary span"을 의미합니다.

목차

매개변수

dest - 분석될 null로 종료되는 바이트 문자열에 대한 포인터
src - 검색할 문자들을 포함하는 null로 종료되는 바이트 문자열에 대한 포인터

반환값

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

참고 항목

다른 바이트 문자열에서 발견된 문자들로만 구성된
최대 초기 세그먼트의 길이를 반환합니다
(function)
다른 와이드 문자열에서 발견되지 않는 문자들로만 구성된
최대 초기 세그먼트의 길이를 반환합니다
(function)
구분자 집합에서 임의의 문자의 첫 번째 위치를 찾습니다
(function)
문자의 첫 번째 발생을 찾습니다
( std::basic_string<CharT,Traits,Allocator> 의 public member function)
C documentation for strcspn