當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C++ strpbrk()用法及代碼示例


C++ 中的strpbrk() 函數在另一個字符串中搜索一個字符串中存在的一組字符。

strpbrk() 原型

const char* strpbrk( const char* dest, const char* breakset );
char* strpbrk( char* dest, const char* breakset );

strpbrk() 函數采用兩個以空結尾的字節字符串:destbreakset 作為其參數。它在 dest 指向的空終止字節字符串中搜索 breakset 指向的字符串中存在的任何字符,並在 dest 中返回指向該字符的指針。

它在<cstring> 頭文件中定義。

參數:

  • dest:指向要搜索的空終止字符串的指針。
  • breakset:指向包含要搜索的字符的空終止字符串的指針。

返回:

  • 如果 destbreakset 指針具有一個或多個共同字符,則 strpbrk() 函數將指針返回到 dest 中的第一個字符,該字符也在 breakset 中。
  • 如果 dest 中不存在 breakset 中的字符,則返回空指針。

示例:strpbrk() 函數的工作原理

#include <iostream>
#include <cstdio>

using namespace std;

int main()
{
    char digits[] = "0123456789";
    char code[] = "ceQasieoLPqa4xz10Iyq";
    char *pos;
    int count = 0;

    pos = strpbrk (code, digits);
    while (pos != NULL)
    {
        pos = strpbrk (pos+1,digits);
        count ++;
    }

    cout << "There are " << count << " numbers in " << code;

    return 0;
}

運行程序時,輸出將是:

There are 3 numbers in ceQasieoLPqa4xz10Iyq

相關用法


注:本文由純淨天空篩選整理自 C++ strpbrk()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。