浅谈 string

#include<string>

string s="do";

s.size();

s.insert(0,"How");

s.append("you");

s=s+"do?"

s.size();

归纳的知识点:

(1) insert函数 :第一个参数表明插入源串的位置,第二个参数表明要插入的字符串,因此利用该函数可实现串首、串尾及任意位置处的字符串插入功能。

(2) append函数 :仅有一个输入参数,在源字符串尾部追加该字符串。

(3) 利用“+”实现字符串的连接,从而创建新的字符串。

(4) size函数 :无输入参数,它表明了字符串长度值。string类本身可根据需要自动调节串所在的内存空间的大小。

 

string s="what's your name?"

s.replace(7,4,"her");   //替换后变为what's her name?

归纳知识点:

(1) 常用的replace函数,有三个输入参数:第一个用于指示从字符串的什么位置开始改写; 第二个用于指示从原字符串总删除多少个字符; 第三个是替换字符串的值。

 

string s="what's your name? my name is Tom. How do you do?";

int n=s.find("your");  //n=7

n=s.find("you",15)   //n=41

归纳知识点:

(1) find("your") :从源串起始位置0(默认值)处查找有“your”字符串位置,所以结果为7.

(2) find("you",15) :从源串起始位置15处查找有“you”字符串位置,所以结果为41

 

string s1="How are you?";

s1.erase(s1.begin(),s1.begin()+3);  //s1=are you?

string s2="Fine, thanks";

s2.erase(s2.begin(),s2.end());  //s2为空

归纳知识点:

(1) s1.erase(s1.begin(),s1.begin()+3)表明删除s1串的前三个字符;s2.erase(s2.begin(),s2.end())表明删除整个s2字符串,故没有显示结果。

 

posted @ 2014-03-28 09:44  zhoudan  阅读(93)  评论(0编辑  收藏  举报