好纠结,为什么连接的字符串后面有乱码?
#include <stdio.h>void ljzfc(char a[],char b[],char c[]);
void main()
{
char a[]={"i love china"},b[]={" i love world"};
char c[40];
ljzfc(a,b,c);
printf("%s",c);
}
void ljzfc(char a[],char b[],char c[])
{
int i,k;
for (i=0;a[i]!='\0';i++)
c[i]=a[i];
for (k=0;b[k]!='\0';k++,i++)
c[i]=b[k];
c[i+k]='\0';
}
这是一个连接字符串的小程序,真搞不懂为什么运行后结果后面会有乱码?求帮助~~