1.指針法實現strcpy(字串複製的功能)
函數原型:char * strcpy(char *str1,const char *str2)
char * my_strcpy(char *str1,const char *str2)
{
char *p=str1;
assert(str1!=NULL && str2!=NULL);//斷言
while(*p)
{
p++;
str2++;
}
return str1;
}
2.指針法實現strcat(字串連線的功能)
函數原型:char *strcat(char *dest, const char *src)
char * my _strcat(char *str1,const char *str2)
{
char *p=str1;
assert(str1!=NULL && str2!=NULL);//斷言
while(*p!='\0')
{
p++;
}
while(*p==*str2)
{
p++;
str2++;
}
return str1;
}
#include <stdio.h>
#include <string.h>
#include <assert.h>
int my_strcmp(const char *str1,const char *str2)
{
int i=0;
int max_len=0;
assert(str1!=NULL && str2!=NULL);
max_len = strlen(str1)>=strlen(str2) ? strlen(str1) : strlen(str2);
for(i=0;i<max_len+1;i++)
{
if(str1[i]<str2[i])
{
return -1;
}
else if(str1[i]>str2[i])
{
return 1;
}
}
return 0;
}