求子串
问题:STL学得真不过关啊 ,用到时就像不起来, while(cin.get(c))在结束时,先换行,即按下回车键,在按ctl+z键,代码是看了别人之后,自己重写的。
STL还是要好好学,真的很有用,可以吧复杂的问题变得简单。
代码:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<char> s;
char c;
int beg,len;
while(cin.get(c))
s.push_back(c);
cout<<"please input the the position of the begin and length of the sub"<<endl;
cin.clear();
cin>>beg>>len;
if((len-beg)>s.size()||beg<0)
cout<<"please input the right value"<<endl;
vector<char>::iterator pos;
for(pos=s.begin()+beg-1;pos!=s.begin()+beg+len-1;pos++)
cout<<*pos;
cout<<endl;
}


浙公网安备 33010602011771号