[求助]一道数组题,大家研究一下~!
#include<stdio.h>main()
{
char a1[5]={'H','e','l','l','o'};
char a2[5]={'W','o','r','l','d'}; //定义三个字符数组,并初始化a1,a2
char a3[10];
char *p1,*p2,*p3; //定义三个指针
int i;
p1=a1;
p2=a2; //分别把字符数组a1,a2,a3赋给指针p1,p2,p3
p3=a3;
for(i=0;i<5;i++,p1++,p3++) //先把a1的值赋给a3
a3[i]=a1[i];
for(i=0;i<5;i++,p2++,p3++) //在把a2的值赋给a3
a3[i+5]=a2[i];
for(i=0;i<10;i++,p3++) //最后输出
printf("%c",a3[i]);
printf("\n");
}
-------------------------------------------------------------------------------------------------------------------------------------
以上就是源代码,小弟有一点不明白:"在把a2的值赋给a3"时,for循环下的"a3[i+5]=a2[i]"数组"a3[i]"为什么要写成"a3[i+5]",就是为什么要加个5呢?
第二点就是:"为什么两个数组不能直接相加?"
HELP~!(*&^%$#@!~!!!!!! THANK U VERY MUCH!