// my_strcpy
#include<stdio.h>
#include<windows.h>#include<assert.h>
char* my_strcpy(char*dest,const char*src)
{
char*ret = dest;
assert(dest!=NULL);
assert(src!=NULL);
while(*dest++ = *src++)
{
;
}
return ret;
}
int main()
{
char arr[20] = {0};
my_strcpy(arr,"abcdef");
printf("%s\n",arr);
system("pause");
return 0;
}
// my_strcat
#include<stdio.h>
#include<windows.h>
#include<assert.h>
char* my_strcat(char*dest,const char*src)
{
char*ret = dest;
assert(dest!=NULL);
assert(src!=NULL);
while(*dest)
{
dest++;
}
while(*dest++ = *src++)
{
;
}
return ret;
}
int main()
{
char arr[20] = "hello";
my_strcat(arr," world");
printf("%s\n",arr);
system("pause");
return 0;
}
// my_strcmp
#include<stdio.h>
#include<windows.h>
#include<assert.h>
int my_strcmp(const char*str1,const char*str2)
{
while(*str1 == *str2)
{
if(*str1 == '\0')
{
return 0;
}
str1++;
str2++;
}
return str1-str2;
}
int main()
{
int ret = 0;
char*s1 = "abcdefg";
char*s2 = "abcdeq";
ret = my_strcmp(s1,s2);
printf("%d\n",ret);
system("pause");
return 0;
}