#include <stdio.h>
void My_Str_Print(const char *str)
{
while(*str!= '\0')
{
printf("%c",*str++);
}
printf("\n");
}
int My_Strlen(char *str)
{
int count = 0;
while (*str++ != '\0')
{
count++;
}
return count;
}
void My_Strcpy( char *str1, const char *str2)
{
while (*str1++ = *str2++);
}
void My_Strcat(char *strfront, const char *strbehind)
{
char *p = strfront+My_Strlen(strfront);
while (*strbehind != '\0')
{
*p++ = *strbehind++;
}
}
int My_Strcmp(const char *str1, const char *str2)
{
while(*str1 != '\0' && *str2 != '\0')
{
if( *str1++ < *str2++ )
{
return -1;
}
else if( *str1++ > *str2++ )
{
return 1;
}
else if( *str1++ == *str2++ )
{
continue;
}
}
if(*str1 == '\0' && *str2 != '\0')
{
return -1;
}
else if(*str1 != '\0' && *str2 == '\0')
{
return 1;
}
else if(*str1 == '\0' && *str2 == '\0')
{
return 0;
}
}
int main()
{
char str1[30] = "xjrong";
char str2[30];
char str3[30]= "dhbuo";
My_Str_Print(str1);
printf("%d \n", My_Strlen(str1));
My_Strcpy(str2, str1);
My_Str_Print(str2);
My_Strcat(str3, str1);
My_Str_Print(str3);
printf("%d \n", My_Strcmp(str1, str3));
return 0;
}