strcpy,strlen,strcat源码[MSDN]

来源:互联网 发布:物理 知乎 编辑:程序博客网 时间:2024/05/17 01:56

char *strcpy(char *dst,char *src)

{

char *cp=dst;

while(*cp++=*src++)

{

;

}

return(dst);

}


char *strlen(const char *str)

{

const char *cp=str;

while(*cp++)

{

;

}

return(cp-str-1);

}


char *strcat(char * dst ,const char *src)

{

char *cp=dst;

cp++;

while(*cp++=*src++)

{

;

}

return(dst);

}


int strcmp(const char *dst,const char *src)

{

int ret=0;

while(!(ret=*(unsigned char*)src-*(unsigned char *)dst)&&*dst) //比较基于unsigned basis,NULL(0)小于任何字符

{

++src,++dst;

}

if(ret<0)

{

ret=-1;

}

else if(ret>0)

{

ret=1;

}

return ret;

}


0 0
原创粉丝点击