c++字符串的设计与实现

上传人:飞*** 文档编号:47768484 上传时间:2018-07-04 格式:PDF 页数:12 大小:133.84KB
返回 下载 相关 举报
c++字符串的设计与实现_第1页
第1页 / 共12页
c++字符串的设计与实现_第2页
第2页 / 共12页
c++字符串的设计与实现_第3页
第3页 / 共12页
c++字符串的设计与实现_第4页
第4页 / 共12页
c++字符串的设计与实现_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《c++字符串的设计与实现》由会员分享,可在线阅读,更多相关《c++字符串的设计与实现(12页珍藏版)》请在金锄头文库上搜索。

1、第 1 页 共 12 页算法与数据结构实验报告实验题目:字符串的设计与实现任课教师:贺怀清学号:120341108 姓名:郭兵权完成日期: 2014.4.12 一、 . 需求和规格说明熟悉字符串类定义的优点;掌握基本操作的实现算法;设计字符串类并给出其基本操作和运算符重载的算法实现。二. 设计2.1 算法描述/String 类头文件#ifndef STRING_H #define STRING_H #include #include class String public: /private: char *str; /字符串int size; /字符串长度String(char *s)/ 构造

2、函数 int len=0; while(*(s+len)!=0) 第 2 页 共 12 页len=len+1; size=len; /size=strlen(s); str=new charsize+1;/ 字符串的空间加上结束符0 assert(str!=0); /若 str=0,程序退出strcpy(str,s); /将 s 复制到 str String() size=0; str=new char; str0=0; void clear() size=0; str=new char; str0=0; /coutb.size) a.show(); else b.show(); int le

3、ngth() /长度 return size; void show() /显示字符串 cout=size) /若 pos 大于本身字符串长return NULL; /返回空串if(nleft) /若抽取的长度大于pos 之后的长度n=left; /最多只能抓取长度为left 的字符delete tmp.str; tmp.str=new charn+1; tmp.size=n;/ 新的字符串长度为n int i=0; while(i using namespace std; #include #include “string.h“ int main() couts1; String st1(s1

4、); coutn; switch(n) 第 7 页 共 12 页 case 1: couts3; String st3(s3); (st1,st3); break; case 4: int pos; coutpos; int n; coutn; String st4=st1.substr(pos,n); coutc0; int start; coutstart; couts6; String st6(s6); couts7; String st7(s7); st7.copy(st1,st7); coutpos; couts8; String st8=st1.insert(s8,pos); co

5、ut“ 新的字符串为:“endl; st8.show(); break; case 9: st1.clear(); st1.show(); cout“ 空间已释放 .“endl; break; default: cout“ 暂时还没有开发这个功能!“endl; break; system(“pause“); return 0; 第 10 页 共 12 页2.2 实现注释程序算法注释直接见源代码的注释。设计了人性化的ui。三 . 用 户手册1根据提示,输入字符串;2按回车,根据ui 操作;3 成功显示逆置后的链式队列。四 . 调 试报告这个程序是这个学期的第3 个程序,程序的内容不算是太难,整个

6、过程都保持一个比较清晰的思路,但是有个最大的,也是最容易忽略的问题,就是写构造函数,若是构造不合理,就会出现各种内存的空间报错。好在后来合理构造函数,问题也迎刃而解. 目前程序运行无错误。第 11 页 共 12 页五. 运行结果请输入字符串:aksdjhaijsdhkajsd /输入你输入的字符串为:aksdjhaijsdhkajsd 请输入号码以实现对应功能:1 .求字符串长度; 2 .判断字符串是否为空; 3 .比较并返回两个字符串较长的串; 4 .抽取字串 ; 5 .查找字符 ; 6 .拼接字符串 ; 7 .字符串复制 ; 8 .插入字符串 ; 9 .释放字符串的储存空间. 4 /输入你想从第几个字符后面开始抽取?第 12 页 共 12 页3 /输入你想抽取多少个字符?5 /输入抽取的字符串为:djhaij 请按任意键继续. . . /更详细的内容请参阅附件

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号