std::strcspn
Von cppreference.com
| Definiert in Header <cstring> |
||
| std::size_t strcspn( const char *dest, const char *src ); |
||
Gibt die Länge des längsten Anfangssegments der durch dest zeigenden Byte-Zeichenkette zurück, das nur Zeichen enthält, die *nicht* in der durch src zeigenden Byte-Zeichenkette gefunden werden.
Der Funktionsname steht für "komplementärer Bereich" (complementary span).
Inhalt |
[bearbeiten] Parameter
| dest | - | Zeiger auf den nullterminierten Byte-String, der analysiert werden soll |
| src | - | Zeiger auf die nullterminierte Byte-Zeichenkette, die die zu suchenden Zeichen enthält |
[bearbeiten] Rückgabewert
Die Länge des längsten Anfangssegments, das nur Zeichen enthält, die nicht in der durch src zeigenden Byte-Zeichenkette gefunden werden.
[bearbeiten] Beispiel
Führen Sie diesen Code aus
#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"; } }
Ausgabe
"abcde312$#@" contains invalid chars starting at position 8 ---------^
[bearbeiten] Siehe auch
| gibt die Länge des maximalen Anfangssegments zurück, das nur aus den Zeichen besteht, die in einem anderen Byte-String vorkommen (Funktion) | |
| gibt die Länge des maximalen Anfangssegments zurück, das nur von den breiten Zeichen, die nicht in einer anderen breiten Zeichenkette gefunden wurden (Funktion) | |
| findet die erste Stelle eines beliebigen Zeichens aus einer Menge von Trennzeichen (Funktion) | |
| findet das erste Vorkommen von Zeichen (öffentliche Memberfunktion von std::basic_string<CharT,Traits,Allocator>) | |
| C-Dokumentation für strcspn
| |