题目
- 实现 mystrcpy(), mystrcmp(), mystrcat(), mystrlen() ;
思路
功能实现:针对字符串的操作,即str系列接口的原理的实现。
代码
#include <stdio.h>
#include <stdlib.h>
char* mystrcpy(char *to,char *from)
{
int i=0;
while(from[i])
{
to[i]=from[i];
i++;
}
to[i]=0;//或to[i]='\0';
return to;
}
int mystrlen( char *str )
{
int i=0;
while(str[i])
{
i++;
}
return i;
}
int mystrcmp(char *str1,char *str2)
{
int i=0;
while(str1[i])
{
if(str1[i]!=str2[i])
break;
i++;
}
return str1[i]-str2[i];
}
char* mystrcat(char *str1,char *str2)
{
int i=mystrlen(str1);
int j=0;
while(str2[j])
{
str1[i]=str2[j];
i++;
j++;
}
str1[i]=str2[j];
return str1;
}
int main()
{
char c[20]="hello";
char d[10];
mystrcpy(d,c);
puts(d);
printf("%d\n",mystrlen(d));
printf("cmp=%d\n",mystrcmp("hello","hello"));
printf("%s\n",mystrcat(c,"world"));
system("pause");
}执行结果

京公网安备 11010502036488号