#include
#include
using namespace std;
class a//连接类
{ public:
a(string &s1) { char str2[20];
cout<<"请输入要连接的字符串:"< gets(str2); string s2(str2); string s3; s3=s1.append(s2);//连接s2到s1后并赋s3 cout< } }; class b//复制类 { public: b(string &s1) { string s2(s1);//把s1拷贝给s2 cout<<"字符串2:"< } }; class c//查找类 { public: c (string &s1) { cout<<"请输入要查找的字符或字符串"< char str2[20]; gets(str2); if(s1.find(str2)>s1.length())cout<<"找不到你输入的字符或字符串!"< else cout<<"你要找的字符串的开始位置是:"< } }; class d//交换类 { public: d(string &s1) { char str2[20]; cout<<"请输入要交换字符串s2:"< gets(str2); string s2(str2); s1.swap(s2);//把s2和s1交换 cout<<"交换后s1为:"< cout< } }; class e//求子串类 { public: e(string &s1) { int start,n; cout<<"请输入子串的起始位置:"; cin>>start; cout<<"请输入子串的长度:"; cin>>n; string s3=s1.assign(s1,start-1,n);//把字符串s中从start开始的n个字符赋给当前字符串 cout< } }; class f//比较类 { public: f(string &s1) { char str2[20]; cout<<"请输入要比较的字符串s2:"< gets(str2); string s2(str2); if(https://www.docsj.com/doc/0c14942208.html,pare(s2)<0)//比较其大小 cout<<"s1比s2小"< if(https://www.docsj.com/doc/0c14942208.html,pare(s2)>0) cout<<"s1比s2大"< if(https://www.docsj.com/doc/0c14942208.html,pare(s2)==0) cout<<"s1与s2相等"< } }; void main( ) { cout<<"menu:"< cout<<" ******************************* "< cout<<"\t* 欢迎进入字符串设计*\t"< cout<<" ********************** "< cout<<" ********************* "< cout<<" 1)**********连接***********"< cout<<" 2)***********复制***********"< cout<<" 3) ************查找***********"< cout<<" 4)***********交换***********"< cout<<" 5)**********求子串类********** "< cout<<" 6)***********比较************ "< cout<<" 7)**********退出************"< cout<<"请输入一个字符串s1:"< gets(str1); string s1(str1); len=strlen(str1);//保存字符串长度 while(num!=7)//功能选项 { cout<<"请选择功能的序号:"< cin>>num; if(num==1)a a(s1); if(num==2)b a(s1); if(num==3)c a(s1); if(num==4)d a(s1); if(num==5)e a(s1); if(num==6)f a(s1); } }