📌  相关文章
📜  计算字符串中的一个字符 c++ (1)

📅  最后修改于: 2023-12-03 15:28:01.454000             🧑  作者: Mango

计算字符串中的一个字符

在C++中,我们可以使用标准库函数来计算一个字符串中某个字符出现的次数,或者判断一个字符串中是否包含某个字符。

计算字符出现次数

使用count函数来计算一个字符串中某个字符出现的次数,函数定义如下:

size_t count( const CharT* str, size_t num, CharT ch );
size_t count( const CharT* str, size_t num, CharT c1, CharT c2 );

其中,第一个参数是需要计算的字符串指针,第二个参数是字符串长度,第三个参数是需要计算的字符。

示例代码:

#include <iostream>
#include <string>

int main() {
    std::string str = "hello, world!";
    char target = 'l';
    size_t count = std::count(str.begin(), str.end(), target);
    std::cout << target << "出现的次数为:" << count << std::endl;
    return 0;
}

输出:

l出现的次数为:3
判断是否包含某个字符

使用find函数来判断一个字符串中是否包含某个字符,函数定义如下:

size_t find( const CharT* str, size_t pos, size_t count, CharT ch );
size_t find( const CharT* str, size_t pos, CharT ch );
size_t find( const CharT* str, size_t pos, const CharT* s, size_t count );
size_t find( const CharT* str, size_t pos, const CharT* s );

其中,第一个参数是需要计算的字符串指针,第二个参数是搜索的起始位置,默认为0,从头开始搜索,第三个参数是搜索的长度,默认为字符串的结尾,第四个参数是需要搜索的字符或者字符串。

示例代码:

#include <iostream>
#include <string>

int main() {
    std::string str = "hello, world!";
    char target = 'l';
    bool hasTarget = str.find(target) != std::string::npos;
    std::cout << "字符串中是否包含字符" << target << ":" << hasTarget << std::endl;
    return 0;
}

输出:

字符串中是否包含字符l:1