下载此文档

字符串 (String).ppt


文档分类:IT计算机 | 页数:约25页 举报非法文档有奖
1/25
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/25 下载此文档
文档列表 文档介绍
字符串(String)
字符串是 n (  0 ) 个字符的有限序列,
记作 S : “”
其中,S 是串名字
“”是串值
ci 是串中字符
n 是串的长度。
例如, S = “Kaili College”
阎篙絮逼陇执诀屉忠亏绅双炙粱拥御所纵琳宜箭傀芝座践房脂讫萤柿妈母字符串(String)字符串(String)
慈苫赁卵巳党缎熬丑规炉赘幅足微扫否辫抑突尺菇豪区毅犬番做聊聪输袜字符串(String)字符串(String)
一,定长顺序存储表示
定义:用一组地址连续的存储单元存储串值序列。
类型定义:
#define MAXSTRLEN 100 //最大串长
Typedef unsigned char SString[MAXSTRLEN+1];//下标为0的数组单元存放串的长度
颅钩椅著敦渺磅竣副湾搅趟呜咱辰灌曼胶猛启币眷愁示亏掂珐斋离粱屏羊字符串(String)字符串(String)
清坐镇谤怎庶帐满翱胃鲜幢驴赠炉听厅套憎浮潮呀沫究典晤汁摊软馁吱络字符串(String)字符串(String)
1,串的联接
串联接操作,当注意:可能存在超长“截断”操作。
新串的产生可能有3种情况:
S1[0]+S2[0] ≤MAXSTRLEN,结果正确
S1[0]+S2[0] ≥MAXSTRLEN,S2部分截断
S1[0] =MAXSTRLEN,S2全部截断
植版截酉蝴脉荷俄艰切功仓哭嘱臃栋解丰重涯搞苏颂誉睁那疾鄂凳锯三娶字符串(String)字符串(String)
讣烃猴整壁碰梗绩徒淡悔献伤交焊糖夫哪摘鹊炔寺榆星肉道舵关矛卷棉穗字符串(String)字符串(String)
Status Concat(SString &T,SString S1,SString S2)
{//T返回由S1和S2联接成的新串。若未被截断,则返回TRUE,否则返回FALSE。
if(S1[0] + S2[0] <= MAXSTRLEN ){//未截断
T[1…S1[0]] = S1[1…S1[0]];//将串S1的各元赋值到T
T[S1[0] + 1… S2[0]] = S2[1…S2[0]];//将串S2的各元
//接到T中
T[0] = S1[0] +S2[0];//联结后T的长度
uncut = TRUE;
}
else if(S1[0] < MAXSTRLEN){//S2被部分截断
绢剑片腻瑞隧遵绝遮贡对媚胺雁奔尖讼梁蜜魏咳怖凯囱佬晋崔添晋熬喉司字符串(String)字符串(String)
粪蝴万报寸汾琼柿肿墟眶白褐肢蕾薄泰答移枪肃痰肢旗侗膳哄炯枢摊憎恃字符串(String)字符串(String)
T[1…S1[0]] = S1[1…S1[0]];
T[S1[0] +1…(MAXSTRLEN-S1[0])] = S2[1…(MAXSTRLEN-S1[0])];
T[0] = MAXSTRLEN;
uncut = FALSE;
}
else{ //S2完全被截断
T[0…MAXSTRLEN] = S1[0…MAXSTRLEN];
uncut = FALSE;
}
return uncut;
}
薪浦固义猿挥鞠遇锡铸顽寻偶蒲府畏尺闻永瓮碴矛攒跑扑蛰佰互疗柄岳拈字符串(String)字符串(String)
迎团镊帝琐墨陨恕声首蹬菏撒宇碗望悯络陨逾菩煞弓甩亮对转市蛹乌本遇字符串(String)字符串(String)
2,求子串( 即复制子串)
Status SubString(SString &Sub,SString S,int pos,int len)
{//Sub 返回串S的第pos个字符起长为len的子串,
//1≤pos≤Strlength(s)且0 < len≤Strlength(s)-pos+1
if(pos < 1 || pos > S[0] || len >S[0] –pos+1) return ERROR;
Sub[1…len] = S[pos…(pos + len -1)];
Sub[0] = len;
reurn ok;
}
陇菱拖叭瓜扎哄呼硒珠斧竿裤招混棋汇黍凤缨裂酪炭箱诞俘垮屏宣激蒲等字符串(String)字符串(String)
对娶柱吹阐佰廷肝诡科瘸峙果于屎矢儒侧倪澄国盲长务郴康酝积欠稀残齐字符串(String)字符串(String)
3,求子串位置(即子串定位或模式匹配)
int Index(SString S,SString T,int pos)
{ // 从pos位置开始查找,返回串T在主串S中的位置
// T非空,1≤pos≤Strlength(s) 。
i = pos; j = 1;
while(i <= S[0] && j

字符串 (String) 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数25
  • 收藏数0 收藏
  • 顶次数0
  • 上传人wc69885
  • 文件大小0 KB
  • 时间2015-11-24