Namespaces
Variants

std:: strcspn

From cppreference.net
Definiert im Header <cstring>
std:: size_t strcspn ( const char * dest, const char * src ) ;

Gibt die Länge des maximalen Anfangssegments der Byte-Zeichenkette zurück, auf die dest zeigt, das ausschließlich aus Zeichen besteht, die nicht in der Byte-Zeichenkette vorkommen, auf die src zeigt.

Der Funktionsname steht für "complementary span".

Inhaltsverzeichnis

Parameter

dest - Zeiger auf die zu analysierende nullterminierte Byte-Zeichenkette
src - Zeiger auf die nullterminierte Byte-Zeichenkette, die die zu suchenden Zeichen enthält

Rückgabewert

Die Länge des maximalen Anfangssegments, das nur Zeichen enthält, die nicht in der Byte-Zeichenkette vorkommen, auf die src zeigt.

Beispiel

#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)
                  << " enthält ungültige Zeichen ab Position "
                  << valid_len << '\n'
                  << std::string(valid_len + 1, '-') << "^\n";
    }
}

Ausgabe:

"abcde312$#@" enthält ungültige Zeichen ab Position 8
---------^

Siehe auch

gibt die Länge des maximalen Anfangssegments zurück, das nur aus
Zeichen besteht, die in einer anderen Byte-Zeichenkette gefunden werden
(Funktion)
gibt die Länge des maximalen Anfangssegments zurück, das nur aus
Wide-Zeichen besteht, die nicht in einer anderen Wide-Zeichenkette gefunden werden
(Funktion)
findet die erste Position eines beliebigen Zeichens aus einem Satz von Trennzeichen
(Funktion)
findet das erste Vorkommen von Zeichen
(öffentliche Elementfunktion von std::basic_string<CharT,Traits,Allocator> )
C-Dokumentation für strcspn