您好,想求c++大神给说下在string中的append()函数的用法

求大神给说下,给发个资料也好,谢谢

BIG阳
浏览 150回答 2
2回答

料青山看我应如是

要想使用标准C++中string类,必须要包含#include <string>// 注意是<string>,不是<string.h>,带.h的是C语言中的头文件using std::string;using std::wstring;或using namespace std;下面你就可以使用string/wstring了,它们两分别对应着char和wchar_t。string和wstring的用法是一样的,以下只用string作介绍:string类的构造函数:string(const char *s); //用c字符串s初始化string(int n,char c); //用n个字符c初始化此外,string类还支持默认构造函数和复制构造函数,如string s1;string s2="hello";都是正确的写法。当构造的string太长而无法表达时会抛出length_error异常 ;string类的字符操作:const char &operator[](int n)const;const char &at(int n)const;char &operator[](int n);char &at(int n);operator[]和at()均返回当前字符串中第n个字符的位置,但at函数提供范围检查,当越界时会抛出out_of_range异常,下标运算符[]不提供检查访问。const char *data()const;//返回一个非null终止的c字符数组const char *c_str()const;//返回一个以null终止的c字符串int copy(char *s, int n, int pos = 0) const;//把当前串中以pos开始的n个字符拷贝到以s为起始位置的字符数组中,返回实际拷贝的数目string的特性描述:int capacity()const; //返回当前容量(即string中不必增加内存即可存放的元素个数)int max_size()const; //返回string对象中可存放的最大字符串的长度int size()const; //返回当前字符串的大小int length()const; //返回当前字符串的长度bool empty()const; //当前字符串是否为空void resize(int len,char c);//把字符串当前大小置为len,并用字符c填充不足的部分string类的输入输出操作:string类重载运算符operator>>用于输入,同样重载运算符operator<<用于输出操作。函数getline(istream &in,string &s);用于从输入流in中读取字符串到s中,以换行符'\n'分开。string的赋值:string &operator=(const string &s);//把字符串s赋给当前字符串string &assign(const char *s);//用c类型字符串s赋值string &assign(const char *s,int n);//用c字符串s开始的n个字符赋值string &assign(const string &s);//把字符串s赋给当前字符串string &assign(int n,char c);//用n个字符c赋值给当前字符串string &assign(const string &s,int start,int n);//把字符串s中从start开始的n个字符赋给当前字符串string &assign(const_iterator first,const_itertor last);//把first和last迭代器之间的部分赋给字符串string的连接:string &operator+=(const string &s);//把字符串s连接到当前字符串的结尾string &append(const char *s); //把c类型字符串s连接到当前字符串结尾string &append(const char *s,int n);//把c类型字符串s的前n个字符连接到当前字符串结尾string &append(const string &s); //同operator+=()string &append(const string &s,int pos,int n);//把字符串s中从pos开始的n个字符连接到当前字符串的结尾string &append(int n,char c); //在当前字符串结尾添加n个字符cstring &append(const_iterator first,const_iterator last);//把迭代器first和last之间的部分连接到当前字符串的结尾string的比较:bool operator==(const string &s1,const string &s2)const;//比较两个字符串是否相等运算符">","<",">=","<=","!="均被重载用于字符串的比较;int compare(const string &s) const;//比较当前字符串和s的大小int compare(int pos, int n,const string &s)const;//比较当前字符串从pos开始的n个字符组成的字符串与s的大小int compare(int pos, int n,const string &s,int pos2,int n2)const;//比较当前字符串从pos开始的n个字符组成的字符串与s中                                  //pos2开始的n2个字符组成的字符串的大小int compare(const char *s) const;int compare(int pos, int n,const char *s) const;int compare(int pos, int n,const char *s, int pos2) const;compare函数在>时返回1,<时返回-1,==时返回0string的子串:string substr(int pos = 0,int n = npos) const;//返回pos开始的n个字符组成的字符串string的交换:void swap(string &s2); //交换当前字符串与s2的值string类的查找函数:int find(char c, int pos = 0) const;//从pos开始查找字符c在当前字符串的位置int find(const char *s, int pos = 0) const;//从pos开始查找字符串s在当前串中的位置int find(const char *s, int pos, int n) const;//从pos开始查找字符串s中前n个字符在当前串中的位置int find(const string &s, int pos = 0) const;//从pos开始查找字符串s在当前串中的位置//查找成功时返回所在位置,失败返回string::npos的值int rfind(char c, int pos = npos) const;//从pos开始从后向前查找字符c在当前串中的位置int rfind(const char *s, int pos = npos) const;int rfind(const char *s, int pos, int n = npos) const;int rfind(const string &s,int pos = npos) const;//从pos开始从后向前查找字符串s中前n个字符组成的字符串在当前串中的位置,成功返回所在位置,失败时返回string::npos的值int find_first_of(char c, int pos = 0) const;//从pos开始查找字符c第一次出现的位置int find_first_of(const char *s, int pos = 0) const;int find_first_of(const char *s, int pos, int n) const;int find_first_of(const string &s,int pos = 0) const;//从pos开始查找当前串中第一个在s的前n个字符组成的数组里的字符的位置。查找失败返回string::nposint find_first_not_of(char c, int pos = 0) const;int find_first_not_of(const char *s, int pos = 0) const;int find_first_not_of(const char *s, int pos,int n) const;int find_first_not_of(const string &s,int pos = 0) const;//从当前串中查找第一个不在串s中的字符出现的位置,失败返回string::nposint find_last_of(char c, int pos = npos) const;int find_last_of(const char *s, int pos = npos) const;int find_last_of(const char *s, int pos, int n = npos) const;int find_last_of(const string &s,int pos = npos) const;int find_last_not_of(char c, int pos = npos) const;int find_last_not_of(const char *s, int pos = npos) const;int find_last_not_of(const char *s, int pos, int n) const;int find_last_not_of(const string &s,int pos = npos) const;//find_last_of和find_last_not_of与find_first_of和find_first_not_of相似,只不过是从后向前查找

守候你守候我

append函数是向string 的后面追加字符或字符串。(1)向string 的后面加C-stringbasic_string&&nbsp;append(&nbsp;const&nbsp;value_type*&nbsp;_Ptr&nbsp;);string&nbsp;s&nbsp;(&nbsp;"Hello&nbsp;"&nbsp;);&nbsp;//&nbsp;s=”Hello&nbsp;”const&nbsp;char&nbsp;*c&nbsp;=&nbsp;"Out&nbsp;There&nbsp;";s.append&nbsp;(&nbsp;c&nbsp;);&nbsp;//&nbsp;s=”Hello&nbsp;Out&nbsp;There”(2)向string 的后面加C-string 的一部分basic_string&&nbsp;append(&nbsp;const&nbsp;value_type*&nbsp;_Ptr,&nbsp;size_type&nbsp;_Count&nbsp;);string&nbsp;s&nbsp;(&nbsp;"Hello&nbsp;"&nbsp;);&nbsp;//&nbsp;s=”Hello&nbsp;”const&nbsp;char&nbsp;*c&nbsp;=&nbsp;"Out&nbsp;There&nbsp;";s.append&nbsp;(&nbsp;c&nbsp;,&nbsp;3&nbsp;);&nbsp;//&nbsp;s=”Hello&nbsp;Out”(3)向string 的后面加string(有两种方法)basic_string&&nbsp;append(&nbsp;const&nbsp;basic_string&&nbsp;_Str&nbsp;);string&nbsp;s1&nbsp;(&nbsp;"Hello&nbsp;"&nbsp;),&nbsp;s2&nbsp;(&nbsp;"Wide&nbsp;"&nbsp;),&nbsp;s3(&nbsp;"World&nbsp;"&nbsp;);s1.append&nbsp;(&nbsp;s2&nbsp;);&nbsp;//&nbsp;s1=”Hello&nbsp;Wide”s1&nbsp;+=&nbsp;s3;&nbsp;//&nbsp;s1=”Hello&nbsp;Wide&nbsp;World”(4)向string 的后面加string 的一部分 ---Abasic_string&&nbsp;append(&nbsp;const&nbsp;basic_string&&nbsp;_Str,&nbsp;size_type&nbsp;_Off,size_type&nbsp;_Count&nbsp;);string&nbsp;s1&nbsp;(&nbsp;"Hello&nbsp;"&nbsp;),&nbsp;s2&nbsp;(&nbsp;"Wide&nbsp;World&nbsp;"&nbsp;);s1.append&nbsp;(&nbsp;s2&nbsp;,&nbsp;5&nbsp;,&nbsp;5&nbsp;);&nbsp;//&nbsp;s1=”Hello&nbsp;World”(5)向string 的后面加string 的一部分 ---Btemplate<class&nbsp;InputIterator>&nbsp;basic_string&&nbsp;append(InputIterator&nbsp;_First,&nbsp;InputIterator&nbsp;_Last&nbsp;);string&nbsp;str1f&nbsp;(&nbsp;"Hello&nbsp;"&nbsp;),&nbsp;str2f&nbsp;(&nbsp;"Wide&nbsp;World"&nbsp;);str1f.append&nbsp;(&nbsp;str2f.begin&nbsp;(&nbsp;)&nbsp;+&nbsp;5&nbsp;,&nbsp;str2f.end&nbsp;(&nbsp;)&nbsp;);&nbsp;//&nbsp;s1=”Hello&nbsp;World”(6)向string 的后面加多个字符basic_string&&nbsp;append(&nbsp;size_type&nbsp;_Count,&nbsp;value_type&nbsp;_Ch&nbsp;);string&nbsp;str1e&nbsp;(&nbsp;"Hello&nbsp;"&nbsp;);str1e.append&nbsp;(&nbsp;4&nbsp;,&nbsp;'!'&nbsp;);&nbsp;//&nbsp;s1=”Hello&nbsp;!!!!”
打开App,查看更多内容
随时随地看视频慕课网APP