【C深度剖析】自实现strcmpstrlenstrcpystrcat

int str_cmp(const char *s1,const char *s2)
{
	int ret;
	while(!(ret = *(unsigned char *)s1 - *(unsigned char *)s2) && s2++)
	  s1++,s2++;
	if(ret > 0)
		ret = 1;
	else if(ret <0)
	  ret = -1;
	
	return ret;
}

int str_len(const char *s)
{
	assert(s != 0);
	char *start = s;
	while(*s++);
	return (s - start - 1);
}

char* str_cpy(char *dest,char *src)
{
	assert( (dest != 0) && (src != 0));
	char* ret = dest;
	while(*src)
	  *dest++ = *src++;
	*dest = '\0';
	return ret;
}

char* str_cat(char *dest,char *src)
{
	assert((dest != 0) && (src != 0));
	char *ret = dest;
	while(*dest)
	  dest++;
	while(*src)
	  *dest++ = *src++;
	*dest = '\0';
	return ret;
}

标题名称:【C深度剖析】自实现strcmpstrlenstrcpystrcat
转载来源:http://bzwzjz.com/article/jgodce.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 营销网站建设 成都网站制作 企业网站建设 企业网站设计 成都模版网站建设 成都网站设计 网站建设开发 宜宾网站设计 成都网站建设 重庆网站建设 成都网站制作 成都响应式网站建设 网站建设 成都网站制作 成都网站制作 成都h5网站建设 成都网站建设公司 营销型网站建设 成都网站建设 成都网站制作 成都网站建设 成都网站建设