c 字符串算法实现

ID:14168916

大小:42.50 KB

页数:11页

时间:2018-07-26

c 字符串算法实现_第1页
c 字符串算法实现_第2页
c 字符串算法实现_第3页
c 字符串算法实现_第4页
c 字符串算法实现_第5页
资源描述:

《c 字符串算法实现》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、c字符串算法实现C字符串处理函数的实现(Linux)#includechar*___strtok=NULL;char*strcpy(char*dest,constchar*src){char*tmp=dest;while((*dest++=*src++)!='')/*nothing*/;returntmp;}char*strncpy(char*dest,constchar*src,size_tcount){char*tmp=dest;while(count--&&(*dest++=*src

2、++)!='')/*nothing*/;returntmp;}char*strcat(char*dest,constchar*src){char*tmp=dest;while(*dest)dest++;while((*dest++=*src++)!='');returntmp;}char*strncat(char*dest,constchar*src,size_tcount){char*tmp=dest;if(count){while(*dest)dest++;while((*dest++=*src++)

3、){if(--count==0)break;}}returntmp;}intstrcmp(constchar*cs,constchar*ct){registersignedchar__res;while(1){if((__res=*cs-*ct++)!=0

4、

5、!*cs++)/*is!*cs++necessary?incasemorecmp*/break;}return__res;}intstrncmp(constchar*cs,constchar*ct,size_tcount){registersignedcha

6、r__res=0;while(count){if((__res=*cs-*ct++)!=0

7、

8、!*cs++)break;count--;}return__res;}char*strchr(constchar*s,charc){for(;*s!=c;++s){if(*s=='')returnNULL;}return(char*)s;}size_tstrlen(constchar*s){constchar*sc;for(sc=s;*sc!='';++sc)/*nothing*/;returnsc-s;}siz

9、e_tstrnlen(constchar*s,size_tcount){constchar*sc;for(sc=s;*sc!=''&&count--;++sc)/*nothing*/;returnsc-s;}size_tstrspn(constchar*s,constchar*accept){constchar*p;constchar*a;size_tcount=0;for(p=s;*p!='';++p){for(a=accept;*a!='';++a){if(*p==*a)break;}if(*a=

10、='')returncount;++count;}returncount;}char*strpbrk(constchar*cs,constchar*ct){constchar*sc1,*sc2;for(sc1=cs;*sc1!='';++sc1){for(sc2=ct;*sc2!='';++sc2){if(*sc1==*sc2)return(char*)sc1;}}returnNULL;}char*strtok(char*s,constchar*ct){char*sbegin,*send;sbegin

11、=s?s:___strtok;if(!sbegin){returnNULL;}sbegin+=strspn(sbegin,ct);if(*sbegin==''){___strtok=NULL;return(NULL);}send=strpbrk(sbegin,ct);if(send&&*send!='')*send++='';___strtok=send;return(sbegin);}void*memset(void*s,charc,size_tcount){char*xs=(char*)s;whi

12、le(count--)*xs++=c;returns;}char*bcopy(constchar*src,char*dest,intcount){char*tmp=dest;while(count--)*tmp++=*src++;returndest;}void*memcpy(void*dest,constvoid*src,size_tcount){char*tmp=(c

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
正文描述:

《c 字符串算法实现》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、c字符串算法实现C字符串处理函数的实现(Linux)#includechar*___strtok=NULL;char*strcpy(char*dest,constchar*src){char*tmp=dest;while((*dest++=*src++)!='')/*nothing*/;returntmp;}char*strncpy(char*dest,constchar*src,size_tcount){char*tmp=dest;while(count--&&(*dest++=*src

2、++)!='')/*nothing*/;returntmp;}char*strcat(char*dest,constchar*src){char*tmp=dest;while(*dest)dest++;while((*dest++=*src++)!='');returntmp;}char*strncat(char*dest,constchar*src,size_tcount){char*tmp=dest;if(count){while(*dest)dest++;while((*dest++=*src++)

3、){if(--count==0)break;}}returntmp;}intstrcmp(constchar*cs,constchar*ct){registersignedchar__res;while(1){if((__res=*cs-*ct++)!=0

4、

5、!*cs++)/*is!*cs++necessary?incasemorecmp*/break;}return__res;}intstrncmp(constchar*cs,constchar*ct,size_tcount){registersignedcha

6、r__res=0;while(count){if((__res=*cs-*ct++)!=0

7、

8、!*cs++)break;count--;}return__res;}char*strchr(constchar*s,charc){for(;*s!=c;++s){if(*s=='')returnNULL;}return(char*)s;}size_tstrlen(constchar*s){constchar*sc;for(sc=s;*sc!='';++sc)/*nothing*/;returnsc-s;}siz

9、e_tstrnlen(constchar*s,size_tcount){constchar*sc;for(sc=s;*sc!=''&&count--;++sc)/*nothing*/;returnsc-s;}size_tstrspn(constchar*s,constchar*accept){constchar*p;constchar*a;size_tcount=0;for(p=s;*p!='';++p){for(a=accept;*a!='';++a){if(*p==*a)break;}if(*a=

10、='')returncount;++count;}returncount;}char*strpbrk(constchar*cs,constchar*ct){constchar*sc1,*sc2;for(sc1=cs;*sc1!='';++sc1){for(sc2=ct;*sc2!='';++sc2){if(*sc1==*sc2)return(char*)sc1;}}returnNULL;}char*strtok(char*s,constchar*ct){char*sbegin,*send;sbegin

11、=s?s:___strtok;if(!sbegin){returnNULL;}sbegin+=strspn(sbegin,ct);if(*sbegin==''){___strtok=NULL;return(NULL);}send=strpbrk(sbegin,ct);if(send&&*send!='')*send++='';___strtok=send;return(sbegin);}void*memset(void*s,charc,size_tcount){char*xs=(char*)s;whi

12、le(count--)*xs++=c;returns;}char*bcopy(constchar*src,char*dest,intcount){char*tmp=dest;while(count--)*tmp++=*src++;returndest;}void*memcpy(void*dest,constvoid*src,size_tcount){char*tmp=(c

显示全部收起
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭