编写一个函数myStrCat,该函数将两个字符串首尾连接起来,然后编写主函数并调用myStrCat函数
void myStrCat(char p1[], char p2[], char p3[])该函数将字符串p1和p2连接起来,赋值给字符串p3
void main()
{
char p1[]=””;
char p2[]=””;
char p3[]=””;
myStrCat();//调用
在屏幕上打印字符串p3的值
}
求回复,小弟在此谢谢
程序代码:#include<stdio.h>
#include<string.h>
#include<stdlib.h>
void myStrCat(char p1[], char p2[], char p3[])
{
int i = strlen(p1);
int j = 0;
memset(p3,0,strlen(p1)+strlen(p2)+1);
strcpy(p3,p1);
for (j = 0; j < (int)strlen(p2);j++)
{
p3[i + j] = p2[j];
}
}
void main()
{
char p1[] = "abcd";
char p2[] = "efgh";
char *p3 = NULL;
p3 = malloc(strlen(p1)+ strlen(p2)+1);
myStrCat(p1,p2,p3);//调用
printf("%s\n",p3);
}