如何用C ++中的“*”替换字符串中的字符?

时间:2012-12-26 06:30:56

标签: c++ stdstring

我是C ++的新手。我的任务是用"*"替换字符串变量的最后3个字符。字符串的大小可以变化。
例如: - 如果是字符串xyz = "123456",那么它应该用"***"替换456,输出字符串应该看起来像"123***"

3 个答案:

答案 0 :(得分:2)

xyz.assign(xyz.length(), '*');

请注意,原始问题已编辑为包含要求只有正确的三个字符串替换为'*'。请参阅下面的评论,以满足此要求。

答案 1 :(得分:1)

使用std::string::replace()

  string::iterator it = str.begin();   
  str.replace(it,str.end(),str.size(),'*');  

答案 2 :(得分:0)

尝试类似于此:

这不是编译检查。

for(int i=0; i<strlen(yourString);i++){
   yourString[i]='*';
}