发布网友 发布时间:2024-10-24 03:29
共3个回答
热心网友 时间:2024-11-19 03:40
你写错了,倒数第二行应该是a[i]='\0',你赋到b上去了,所以可能有乱码。
还有,你这个程序冲内存了,你定义的a数组,系统给的长度是5,而你在程序里有继续修改后面的值,这个区域已经不属于a数组的范围了,记住啊,千万不能这么玩。
修改的方法是定义的时候给出足够长度:char a[20] = "I am" ;
热心网友 时间:2024-11-19 03:39
最后一个应该是a[i]=0;
热心网友 时间:2024-11-19 03:38
#include<stdio.h>
void main()
{ int i=0,j=0;
char a[]="I am";
char b[5]="king";
while(a[i]!=0)
i++;
while(b[j]!=0)
{a[i++]=b[j++];}
a[i]='\0';//看这里!!
printf("%s\n",a);
}