- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
定义一个串类CMyString
/*定义一个串类CMyString,建立适当的构造函数
字符串使用指针保存字符串
必须实现如下操作,字符串比较、求串的长度、判断串是否为空、将串置空、字符串赋值
(包括两个字符串类复制,一个字符串赋值到CmyString对象)
求字符串中的一个字符或改变字符串中的一个字符(采用重载[]),
完成串的赋值与合并(重载+),得到表示字符串的指针地址*/
#includeiostream
#includestring
#includestring.h
using namespace std;
class CMyString
{
public:
char *str;
int len;
public:
CMyString( )
{
str = NULL;
len = 0;
}
CMyString(char *p)
{
str=p;
len=strlen(str);
}
CMyString(CMyString c);
~CMyString(){}
int Length();
friend void compare(CMyString c1,CMyString c2);
void isEmpty();
void clear();
void Display();
/**/friend CMyString operator+(CMyString c1,CMyString c2)
{CMyString s;
s.str=new char[strlen(c1.str)+strlen(c2.str)+1];
strcpy(s.str,c1.str);
strcat(s.str,c2.str);
s.len=strlen(s.str);
return s;
}
char operator[](int n)
{
static char ch=0;
if(nlen-1)
{cout整数下表越界endl;
return ch;
}
else return *(str+n);
}
};
/**/CMyString::CMyString(CMyString c)
{ str=new char[strlen(c.str)+1];
strcpy(str,c.str);
}
int CMyString::Length()
{
return len;
}
void CMyString::isEmpty()
{
if(str!=NULL)
coutstr字符串不为空endl;
else
coutstr字符串为空endl;
}
void CMyString::clear()
{
this-str=NULL;
this-len=0;
}
/**/void CMyString::Display ()
{if(str!=NULL)
coutstrendl;
else
cout字符串为空endl;
}
void compare(CMyString c1,CMyString c2)
{
if(strcmp(c1.str,c2.str)0)
coutc1.str大于c2.strendl;
if(strcmp(c1.str,c2.str)0)
coutc1.str小于c2.strendl;
if(strcmp(c1.str,c2.str)==0)
coutc1.str等于c2.strendl;
}
int main()
{system(color 2b);
char s1[100],s2[100];
bool f=true;int a;
CMyString str1(s1),str2(s2);
CMyString str3,str4;
while(1)
{
if(f)
{system(color 2b);
cout --------------------------------------------endl;
cout |**********[]链表操作 **********|endl;
//cout |**********[]输入字符串 **********|endl;
cout |**********[1]输出字符串 **********|endl;
//cout |**********[3]求字符串的长度 **********|endl;
cout
您可能关注的文档
最近下载
- 古代汉语讲义(下).doc VIP
- 六三制新青岛版五年级科学上册全一册全部课件(一共25课时).pptx
- NB∕T 32035-2016 光伏发电工程概算定额.docx
- 精神科医疗pdca案例.pdf VIP
- 第二单元第2课《心灵的色彩》课件2024人美版初中美术七年级上册.ppt
- 2022年中小学心理健康课程标准.pdf
- 人教版(2024)七年级生物上册课件 2.1.1 藻类、苔藓和蕨类植物.pptx VIP
- 人教版五年级数学上册期中质量监测卷(无答案)(7).docx VIP
- 暨南大学硕士研究生入学考试《353卫生综合》近5年(2017-2021)真题.pdf
- 郭锡良古代汉语详细知识点总结.pdf VIP
文档评论(0)