• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

C++语言数据结构 串的基本操作实例代码

c++ 搞代码 4年前 (2022-01-06) 42次浏览 已收录 0个评论

这篇文章主要介绍了C语言数据结构 串的基本操作实例代码的相关资料,需要的朋友可以参考下

C语言数据结构 串的基本操作实例代码

输出结果:

实现代码:

 #include using namespace std; typedef int Status; #define Max 20 #define OK 1 #define ERROR 0 #define OVERLOE -2 typedef struct//堆分配表示串 { char *ch; int length; }HString; //=================================================================== Status CreatHString(HString &H)//构造字符串 { H.length = 0; H.ch = (char *)malloc(Max*sizeof(char)); for (int i = 0; i <Max; i++) { H.ch[i]=getchar(); H.length++; if (getchar() == '\n') break; } return OK; }//CreatHString //=================================================================== Status PrintHString(HString H)//输出所输入的字符串 { if (H.length == 0) { cout << "空串!" << endl; return ERROR; } else for (int i = 0; i <H.length; i++) cout << H.ch[i] << " "; cout << endl; return OK; }//PrintHString //=================================================================== Status HStringLength(HString H)//求字符串的长度 { cout << "您输入的字符串长度为:" << endl; cout << H.length << endl; return OK; }//HStringLength //=================================================================== Status HStringCompare(HString H, HString T)//求两个字符串长度差(绝对值) { cout << "两个字符串的长度差为:" << endl; int L; L = H.length - T.length; if (L<0) cout << -L <=0) cout << L << endl; return OK; }//HStringCompare //=================================================================== Status ConcatHString(HString &S, HString H, HString T)//链接H和T { if (!(S.ch = (char *)malloc((H.length + T.length)*sizeof(char)))) exit(OVERLOE); for (int i = 0; i <H.length; i++) S.ch[i] = H.ch[i]; S.length = H.length + T.length; for (int j = H.length; j <S.length; j++) S.ch[j] = T.ch[j-H.length]; return OK; }//ConcatHString //=================================================================== Status SubHString(HString &Sub, HString S, int pos,int len) {//用Sub返回串S的第pos个字符起长度为len的子串 if (posS.length) { cout << "输入的位置有误!<i style="color:transparent">来源gaodai$ma#com搞$代*码网</i>" << endl; return ERROR; } if (lenS.length - pos + 1) { cout << "输入的长度有误!" << endl; return ERROR; } if (!len) { Sub.ch == NULL; Sub.length = 0; } else { Sub.ch = (char *)malloc(len*sizeof(char)); for (int i = 0; i > pos >> len; SubHString(Sub, S, pos, len); cout << "截取的子串为:" << endl; PrintHString(Sub); ClearHString(S); cout << "检验S清空后是否为空:" << endl; PrintHString(S); }//main 

以上就是C++语言数据结构 串的基本操作实例代码的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:C++语言数据结构 串的基本操作实例代码
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址