int mystrlen(char *src)//strlen函数
{
int i;
i = 0;
while(*src != '\0')
{
src++;
i++;
}
return i;
}
char *mystrcpy(char *dest,char *src)//strcpy函数
{
char *temp = dest;
while(*src != '\0')
{
*temp = *src;
temp++;
src++;
}
*temp = '\0';
return dest;
}
char *mystrncpy(char *dest, char *src,int n)//strncpy函数
{
char *temp = dest;
int i = 0;
while(i != n)
{
*temp = *src;
temp++;
src++;
i++;
}
*temp = '\0';
return dest;
}
char *mystrcat(char *dest,char *src)//strcat函数
{
char *temp = dest;
while(*temp != '\0')
{
temp++;
}
while(*src != '\0')
{
*temp = *src;
temp++;
src++;
}
*temp = '\0';
return dest;
}
char *mystrncat(char *dest,char *src,int n)//strncat函数
{
int i = 0;
char *temp = dest;
while(*temp != '\0')
{
temp++;
}
while(i != n)
{
*temp = *src;
temp++;
src++;
i++;
}
return dest;
}
int mystrcmp(char *dest,char *src)//strcmp函数
{
while(*src != '\0' && *dest != '\0')
{
if(*dest > *src)
{
return 1;
}
else if(*dest < *src)
{
return -1;
}
src++;
dest++;
}
if(*dest != '\0' && *src == '\0')
{
return 1;
}
if(*dest == '\0' && *src != '\0')
{
return -1;
}
if(*dest == '\0' && *src == '\0')
{
return 0;
}
}
char *mymemcpy(char *dest,char *src,int n) //memcpy函数
{
unsigned char *temp_dest = (unsigned char*)dest;
unsigned char *temp_src = (unsigned char*)src;
while(n > 0)
{
*temp_dest = *temp_src;
temp_dest++;
temp_src++;
n--;
}
return dest;
}
C语言中strlen、strcpy、strncpy、strcat、strnact、strcmp、memcpy函数的实现
最新推荐文章于 2024-01-27 16:08:10 发布