天天看點

strcmp ,strcat,strspy 函數的實作

strcmp 函數的實作

#include <stdio.h>

char *mystrcpy(char *q, char *p)

{

char *temp = q;

while(*p != '\0')

{

*q++ = *p++;

}

*q = '\0';

return temp;

}

int main(void)

{

char dest[64], src[64] = {};

scanf("%s", src);

printf("%s\n", mystrcpy(dest, src));

return 0;

}

strcat函數的實作

#include <stdio.h>

char *mystrcat(char *p1, char *p2)

{

char *temp = p1;

while(*p1++ != '\0')

{

}

p1--;

while(*p2 != '\0')

{

*p1++ = *p2++;

}

*p1 = '\0';

return temp;

}

int main(void)

{

char s1[64], s2[64];

scanf("%s%s", s1, s2);

printf("%s\n", mystrcat(s1, s2));

return 0;

}

strcmp 函數的實作

#include <stdio.h>

int mystrcmp(char *p1, char *p2)

{

while(*p1==*p2 && *p1!='\0')

{

p1++;

p2++;

}

if(*p1 == *p2)

{

return 0;

}

else

{

if(*p1 > *p2)

{

return 1;

}

else

{

return -1;

}

}

}

int main(void)

{

char s1[64], s2[64];

scanf("%s%s", s1, s2);

printf("%d\n", mystrcmp(s1, s2));

return 0;

}

繼續閱讀