c++如何将一个字符串中的每个字母统计个数
时间: 2024-09-14 17:03:53 浏览: 90
C++统计中英文大小写字母、数字、空格及其他字符个数的方法
5星 · 资源好评率100%
在 C++ 中,你可以使用 `std::map` 或者 `std::unordered_map` 来统计一个字符串中每个字符的出现次数。下面是一个使用 `std::map` 的例子:
```cpp
#include <iostream>
#include <string>
#include <map>
void count_chars(const std::string &str) {
std::map<char, int> char_count;
for (char c : str) {
if (std::isalpha(c)) { // 只统计字母,忽略其他字符
char_count[c]++;
}
}
// 输出每个字符及其出现次数
for (const auto &pair : char_count) {
std::cout << "字符 '" << pair.first << "' 出现了 " << pair.second << " 次。\n";
}
}
int main() {
std::string input = "Hello, World!";
count_chars(input);
return 0;
}
```
在这个示例中,我们首先创建了一个空的 `std::map`,然后遍历输入字符串中的每一个字符,如果是字母就增加对应的计数。最后,我们打印出每个字符及其出现次数。
如果你想要统计包括数字和特殊字符在内的所有字符,只需移除 `if (std::isalpha(c))` 这一行即可。
阅读全文