📅  最后修改于: 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