[急求]c++ 中的string 相关操作

我是一名参加信息学竞赛的学生,最近才换了C++,还有很多关于C++string的操作不知道,问题如下1、strlen不能用来string类型的长度(只能求char),那应... 我是一名参加信息学竞赛的学生,最近才换了C++,还有很多关于C++
string的操作不知道,问题如下
1、strlen不能用来string类型的长度(只能求char),那应该用什么方法来求长度呢?
2、在string中有没有类似PASCAL中的pos、copy等函数(求子串位置的函数)
比赛在即,希望各位朋友帮忙!我已经没分了, 就只10分,希望不要嫌少啊!!!急!!!
展开
 我来答
百度网友5d2d01fa0
2006-10-18 · TA获得超过2158个赞
知道小有建树答主
回答量:943
采纳率:0%
帮助的人:1404万
展开全部
现在信息学竞赛都有C++了吗,好爽啊,以想起当初用PASCAL,唉~~~

竞赛应该用的是标准库,string常用的方法:
string str="123234";
int len=str.length();//求长度
string str2=str.substr(0,2);//从0位置取2个字符,就是"12"

至于求子串位置,string类不提供这样的方法,你只能间接的用其他的标准库函数实现:
string::iterator itr=find(str.bengin(),str.end(),'2');//返回第一个2'的位置的迭代器
其他的还有很多就不说了

还有一个方法,你可能比较熟悉C方式的字符串和字符串函数库,你可以这样:
char p[255];
strcpy(p,str.c_str());//str中的字符串就转化为C的方式存入字符数组p中了,然后就可以用C的库函数处理了,如果需要再转成string
string str3=p;//C的字符串转成string类的方式
百度网友3721809e7
2006-10-18 · TA获得超过247个赞
知道答主
回答量:343
采纳率:0%
帮助的人:0
展开全部
string.size就是求串的长度.
比如,
int main()
{
string st("i am topboy\n");
cout << "then size is " << st.size() << endl;
return 0;
}

第二个问题不清楚
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
niusoft
2006-10-18 · TA获得超过762个赞
知道小有建树答主
回答量:1278
采纳率:0%
帮助的人:0
展开全部
我建议你用CString这个类, 你所说的功能全是这个类的成员函数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sflypig
2006-10-17 · 超过51用户采纳过TA的回答
知道小有建树答主
回答量:413
采纳率:0%
帮助的人:0
展开全部
真好,我们老师不知道我以前学编程,前些天给我报了个pascal,我要C++,真羡慕你。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式