天天看点

重写strcpy,strcat,strcmp函数

1.strcpy()函数

<span style="font-size: 14px;">char* strcpy(char* str,const char* ptr)
{
assert(str!=NULL&&ptr!=NULL);
char *p=str;
while((*str++=*ptr++)!='\0');
return p;
}</span>
           

2.strcat()函数

char* strcat(char* str,const char*ptr)
{
assert(str!=NULL&&ptr!=NULL);
char* p=str;
while(*str!='\0')str++;
while((*str++=*ptr++)!='\0');
return p;}
           

3.strcmp()函数

int strcmp(const char* str1,const char* str2){
assert((str1 != NULL) && (str2 != NULL);
int ret=0;
while(!(ret=(unsigned char*)str1-(unsigned char*)str2)&&*str1){
str1++;
str2++;
}
if(ret>0)
return 1;
else if(ret<0)
return -1;
return 0;
)
           

http://www.cnblogs.com/heyonggang/archive/2013/07/17/3196922.html

继续阅读