#include <stdio.h>
#include <string.h>
char mystrlen(char *s);
char mystrcmp(char *dest,char *src);
void mystrcpy(char *dest,char *src);
void mystrcat(char *dest,char *src);
int main(int argc, const char *argv[])
{
char arr[30]="0";
char brr[30]="0";
printf("请输入第一个数组:");
gets(arr);
printf("请输入第二个数组:");
gets(brr);
int len=mystrlen(arr);
int cmp=mystrcmp(arr,brr);
printf("mystrlen后第一个数组的长度:%d
",len);
printf("mystrcmp后的值为:%d
",cmp);
mystrcat(arr,brr);
mystrcpy(arr,brr);
return 0;
}
char mystrlen(char *s)
{
char *pa=s;
int i,count=0;
for(i=0;i<30;i++)
{
if(*(pa+i)!=0)
{
count++;
}
}
return count;
}
char mystrcmp(char *dest,char *src)
{
int j,l;
char *pa=dest;
char *pb=src;
for(j=0;j<30;j++)
{
if(*pa!=*pb)
{
l=*pa-*pb;
break;
}
else if(*pb==0 &&*pa==0)
{
l=0;
}
pa++;
pb++;
}
return l;
}
void mystrcpy(char *dest,char *src)
{
char *pa=dest;
char *pb=src;
while(*pb!=0)
{
*pa=*pb;
pa++;
pb++;
}
*pa=0;
printf("mystrcpy后第一个数组为:%s
",dest);
printf("mystrcpy后第二个数组为:%s
",src);
}
void mystrcat(char *dest,char *src)
{
char *pa=dest;
char *pb=src;
int i,len1;
len1=strlen(pa);
for(i=0;i<30;i++)
{
while(*pb!=0)
{
*(pa+len1)=*pb;
pa++;
pb++;
}
}
printf("mystcat后第一个数组为:%s
",dest);
}