📌  相关文章
📜  列出字符串中出现的字符 c++ (1)

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

列出字符串中出现的字符

在C++中,我们可以使用标准库函数 std::string 自带的函数 find()rfind() 来查找字符串中某个字符出现的位置,以此来列出字符串中出现的所有字符。

以下是一个示例代码:

#include <iostream>
#include <string>

int main() {
    std::string str = "Hello, world!";
    std::string chars = "";

    for (int i = 0; i < str.length(); i++) {
        if (chars.find(str[i]) == std::string::npos) {
            // 如果字符没有在字符串中出现过
            std::cout << str[i] << std::endl;
            chars += str[i];  // 将该字符加入“已出现字符”的记录中
        }
    }

    return 0;
}

输出结果为:

H
e
l
o
,
 
w
r
d
!

这个程序的思路比较简单,就是遍历字符串中的每个字符,判断是否在已出现字符的记录中出现过,如果没有就输出并加入记录中。

值得注意的是,在字符串中查找某个字符时,它的返回值可能是 std::string::npos,表示没有找到该字符。因此在上面的代码中,我们使用了 std::string::npos 来作为一个特殊的值,以此来判断是否找到了该字符。

希望这个示例代码对您有所帮助!