C++字符串截取

C++字符串截取inti;stringt[10];stringx;getline(cin,x,'\n');for(i=0;i<10;i++){size_ta=x.find... C++字符串截取int i;
string t[10];
string x;
getline(cin,x,'\n');
for(i=0;i<10;i++)
{
size_t a = x.find (",") ;
t[i] = x.substr (k,a) ;
k = a+1;
}

for(i=0;i<10;i++)
{
cout<<"t["<<i<<"]"<<" = "<<t[i]<<endl;
}
---------------------
输入:我,好,帅
输出是:
Tm[0] = 我
Tm[1] = 好
Tm[2] = 好
Tm[3] = 好
Tm[4] = 好
Tm[5] = 好
Tm[6] = 好
Tm[7] = 好
Tm[8] = 好
Tm[9] = 好
哪里错了?
或者大神们还有什么办法让x用逗号截取存进t[]?
展开
 我来答
育知同创教育
2016-06-18 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
可以参考下面的例子,自己动手发现问题,印象才会更深
可以用substr这个方法,有两个输入参数分别为起始地址和截取的长度。
s2 = s1.substr(0,3);
s3 = s1.substr(4,3);

如果写的更通用一点,就是先查找“+”的位置,然后在分隔。
size_t iPos = s.find("+");
s2 = s1.substr(0, iPos);
s3 = s1.substr(iPos+1, s1.length()-iPos-1);
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式