//计算字符串的长度
int my_strlen(char *s)
{
int i = 0;
while(*s != '\0')
{
i++;
s++;
}
return i;
}
//将字符数组str的内容拷贝到字符数组dest中
char *my_strcpy(char *dest,char *str)
{
char *temp = dest;
while(*str != '\0')
{
*temp= *str;
temp++;
str++;
}
*temp = '\0';
return dest;
}
//将字符数组str的前num位拷贝到字符数组dest中
char *my_strncpy(char *dest,char *str,int num)
{
int i;
char *temp = dest;
for(i = 0;i < num; i++)
{
*temp = *str;
temp++;
str++;
}
*temp = '\0';
return dest;
}
//将字符数组dest的内容加接到字符数组str中
char *my_strcat(char *str,char *dest)
{
char *temp = str;
while(*temp != '\0' )
{
temp++;
}
while( *dest != '\0')
{
*temp = *dest;
temp++;
dest++;
}
*temp = '\0';
return str;
}
//将字符数组dest的前num位加接到字符数组str中
char *my_strncat(char *str,char *dest,int num)
{
int i;
char *temp = str;
while(*temp != '\0')
{
temp++;
}
for(i = 0;i < num;i++)
{
*temp = *dest;
temp++;
dest++;
}
*temp = '\0';
return temp;
}
//比较两个字符数组,如果相等,返回0,
//如果出现前一个字符串中第一个大于后一个字符,返回1
//如果出现前一个字符串中第一个小于后一个字符,返回-1
int my_strcmp(char *str,char*dest)
{
int i = 0;
int j = my_strlen(dest);
while(*str != '\0' && *dest != '\0')
{
if(*str == *dest)
{
str++;
dest++;
i++;
if(j == i)
{
return 0;
}
}
else
{
return (*str - 'a') > (*dest -'a')?1:-1;
}
}
}