c++ 中替换字符串

[复制链接]
查看11 | 回复2 | 2009-3-17 03:17:43 | 显示全部楼层 |阅读模式
#include
#include
using namespace std;
int main()
{
int i,m,j;
string str,str2,str3,str4;
while(getline(cin,str))
{
getline(cin,str2);
getline(cin,str4);
for(i=0;i<str.size();i++)
if(str=str2[0])
{

for(m=i,j=0;m<str2.size()+i,j<str2.size();m++,j++)

str3[j]=str[m];

if(str3==str2)

str3=str4;

cout<<str3;

i=i+str2.size()-1;
}
else cout<<str;

}
}
显示string subscript out of range
本人小白不知道哪错了啊... 那个少个等号是打错了不是这个问题

回复

使用道具 举报

千问 | 2009-3-17 03:17:43 | 显示全部楼层
if(str=str2[0]) if(str==str2[0]) // 两个等号才是比较符号,一个等号是赋值string subscript out of range -- string下标超界...
回复

使用道具 举报

千问 | 2009-3-17 03:17:43 | 显示全部楼层
if(str=str2[0]) 判断要用 == 号...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行