正文描述:《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
显示全部收起