用c ++修剪字符串

时间:2012-06-24 10:56:22

标签: c++ replace trim

你好我在c ++中修剪字符串有问题。它在最后添加了一些奇怪的字符 字符串。

string& Napis::subst(char cold, char cnew) { 
    string * s = new string(data); 
    replace(s->begin(),s->end(), cold, cnew);  
    return *s; // takes back string s with changed sign
}

1 个答案:

答案 0 :(得分:1)

我打赌你在subst设置为零时调用cnew。您希望这会删除字符,但这不是它的作用。正如其名称所示,它用零替换它们。

怎么样:

string Napis::subst(char cold, char cnew) { 
    assert(cnew != 0);
    string s = data; 
    replace(s.begin(), s.end(), cold, cnew);  
    return s; // takes back string s with changed sign
}