1.改写mystrlen,mystrcpy,mystrcmp,mystrcat
以下代码为mystring.c代码
/******************************************************
* 名称:mystrlen
* 功能:计算字符串中有效数据长度
* 返回:长度值:len
*****************************************************/
int mystrlen(char arr[])
{
int len=0,i=0;
while(1)
{
if(arr[i] != '\0') len += 1;
else if(arr[i] == '\0') break;
i += 1;
}
return len;
}
/****************************************************
* 名称:mystrcpy
* 功能:字符串复制
* 返回:指针方式返回出字符串
***************************************************/
char* mystrcpy(char arr[],char brr[])
{
int i=0;
while(arr[i] != '\0')
{
brr[i]=arr[i];
i += 1;
}
return brr;
}
/*****************************************************
* 名称:mystrcmp
* 功能:比较两个字符串大小
* 参数:arr比较brr
* 返回:
* 小于0:arr<brr
* 等于0:arr=brr
* 大于0:arr>brr
***************************************************/
int mystrcmp(char arr[],char brr[])
{
int i=0,cnt=0;
while(1)
{
cnt = arr[i]-brr[i];
if(cnt<0 || cnt>0 || (arr[i]=='\0'&&brr[i]=='\0'))
break;
i += 1;
}
return cnt;
}
/***************************************************
* 名称:mystrcat
* 功能:将brr字符串拷贝到arr字符串后面
* 参数:
* 目标参数:arr
* 被拷参数:brr
* 返回:以指针方式返回目标参数和被拷参数的结合
**************************************************/
char* mystrcat(char arr[],char brr[])
{
int l=0;
int i= mystrlen(arr);
while(1)
{
arr[i]=brr[l];
if(l == mystrlen(brr)) break;
l += 1;
i += 1;
}
return arr;
}