Namensräume
Varianten
Aktionen

std::strpbrk

Von cppreference.com
< cpp‎ | string‎ | byte
 
 
 
 
Definiert in Header <cstring>
const char* strpbrk( const char* dest, const char* breakset );
      char* strpbrk(       char* dest, const char* breakset );

Durchsucht die nullterminierte Byte-Zeichenkette, auf die dest zeigt, nach einem beliebigen Zeichen aus der nullterminierten Byte-Zeichenkette, auf die breakset zeigt, und gibt einen Zeiger auf dieses Zeichen zurück.

Inhalt

[bearbeiten] Parameter

dest - Zeiger auf den nullterminierten Byte-String, der analysiert werden soll
breakset - Zeiger auf die nullterminierte Byte-Zeichenkette, die die zu suchenden Zeichen enthält

[bearbeiten] Rückgabewert

Zeiger auf das erste Zeichen in dest, das auch in breakset enthalten ist, oder ein Nullzeiger, wenn kein solches Zeichen existiert.

[bearbeiten] Hinweise

Der Name steht für "string pointer break" (String-Zeiger-Trennzeichen), da die Funktion einen Zeiger auf das erste der Trennzeichen ("break") zurückgibt.

[bearbeiten] Beispiel

#include <cstring>
#include <iomanip>
#include <iostream>
 
int main()
{
    const char* str = "hello world, friend of mine!";
    const char* sep = " ,!";
 
    unsigned int cnt = 0;
    do
    {
        str = std::strpbrk(str, sep); // find separator
        std::cout << std::quoted(str) << '\n';
        if (str)
            str += std::strspn(str, sep); // skip separator
        ++cnt; // increment word count
    } while (str && *str);
 
    std::cout << "There are " << cnt << " words\n";
}

Ausgabe

" world, friend of mine!"
", friend of mine!"
" of mine!"
" mine!"
"!"
There are 5 words

[bearbeiten] Siehe auch

gibt die Länge des maximalen Anfangssegments zurück, das
nur aus den Zeichen besteht, die in einem anderen Byte-String nicht vorkommen
(Funktion) [bearbeiten]
findet das nächste Token in einem Byte-String
(Funktion) [bearbeiten]
findet das erste Vorkommen eines Zeichens
(Funktion) [bearbeiten]
findet die erste Stelle irgendeines breiten Zeichens aus einer breiten Zeichenkette in einer anderen breiten Zeichenkette
(Funktion) [bearbeiten]
C-Dokumentation für strpbrk