小编use*_*181的帖子

对于字符串,如何删除重复的字符?

我想要的字符串操作过程:如果有一个以上连续的字符实例,只保留第一个字母.鉴于"Steelsmith",删除第一个"e",留下字符串"Stelsmith".

这是我的算法:

void replace(string s)
{
    int length = s.length();

    for (int i = 0; i < length; i ++)
    {
        if (s[i] == s[i + 1])
        {
            s.erase(1+i);

        }

    }
    cout << s << endl;
}
Run Code Online (Sandbox Code Playgroud)

当我输入"Steelsmith"时,输出为"Ste",因此它会删除第二个'e'以及字符串的其余部分.如何保留原始字符串的其余部分?

c++ string

1
推荐指数
1
解决办法
3587
查看次数

标签 统计

c++ ×1

string ×1