【发布时间】:2019-11-17 09:11:12
【问题描述】:
我正在尝试替换字符 '.'在我的带有“[.]”的字符串中,使用 .replace 函数,如下面的代码所示。但是,该字符串不超过 16 个字符。另一方面,通过使用 .insert 函数,字符串的长度没有限制。这种行为有什么解释吗?谢谢
我改用 .insert 函数。
newString = "255.100.50.0";
int len = newString.length(), i =0;
while(i < len){if(newString[i] == '.'){
newString.replace(i,1, "[.]");
len = newString.length();
}
i += 3;
}
cout << newString << endl;
【问题讨论】:
-
我认为这可能是您联系learn how to debug your programs 的好时机。使用调试器逐行遍历程序,看看它是否按预期工作。
标签: c++ string c++11 stdstring