在这里我向大家分享如何创建简单的函数实现strcpy,strcat,strcmp的功能,
本人才疏学浅,若有错误,望您不吝赐教。
1.自定义函数实现strcpy功能
#include<stdio.h>
#define N 100
void my_strcpy(char *p, char *q)
{
while (*p++ = *q++);
}
int main(int argc, char *argv[])
{
char s1[N];
char s2[N];
gets(s1);
gets(s2);
my_strcpy(s1,s2);
printf("%s\n",s1);
return 0;
}
2.自定义函数实现strcat功能
#include<stdio.h>
#define N 100
void my_strcpy(char *p, char *q)
{
while (*p++);
*p--;
while (*p++ = *q++);
}
int main(int argc, char *argv[])
{
char s1[N];
char s2[N];
gets(s1);
gets(s2);
my_strcpy(s1,s2);
printf("%s\n",s1);
return 0;
}
3.自定义函数实现strcmp功能
#include<stdio.h>
#define N 100
int my_strcmp(char *p, char *q)
{
int i;
for (i=0; ;i++)
{
if (p[i] > q[i])
return 1;
if (p[i] < q[i])
return -1;
if (p[i] == '\0')
return 0;
}
}
int main(int argc, char *argv[])
{
char s1[N];
char s2[N];
gets(s1);
gets(s2);
printf("%d\n",my_strcmp(s1,s2));
return 0;
}