字符串连接代码求BUG
#include <stdio.h>int main()
{
int n;
char *p1;
char *p2;
char a;
scanf("%s",&a);
char b;
scanf("%s",&b);
p1=a;
p2=b;
int i,m;
scanf("%d",&m);
int sum=0;
for(i=0;*(p1+i)!='\0';i++)
{sum=sum+1;
}
for(i=0;i<m;i++)
{*(p2+i+sum)=*(p1+i);
}
*(p2+m+sum)='\0';
printf("%s",p2);
c++c++c
该代码实现将P1字符串按指定个数连接到P2。如a输入fish,b输入c++,连接数为4。输出结果为c++c++c,看结果连接个数是传递过去了,但是为什么内容没有过去呢。求大神指导,谢谢。
for(i=0;*(p1+i)!='\0';i++)
{sum=sum+1;
}
这句错了,把按照你的说法应该把p1改改为p2 召唤风云 发表于 2020-9-14 21:58
for(i=0;*(p1+i)!='\0';i++)
{sum=sum+1;
}
老哥,还是不行呀 召唤风云 发表于 2020-9-14 21:58
for(i=0;*(p1+i)!='\0';i++)
{sum=sum+1;
}
对了,谢谢
页:
[1]