void connectStr(char *str1,char *str2){
int len = strlen(str1);
char *p = (char *)malloc(sizeof(char) * len);
for(int i=0;i<len;i++){
p[i] = str1[i];
}
int len1 = strlen(str2);
char *pp = (char *)realloc(p,sizeof(char)*(len+len1));
int index = len;
for(int i=0;i<len1;i++){
pp[index++] = str2[i];
}
printf("%s",pp);
}
int main(){
char *str1 = "123";
char *str2 = "abc";
connectStr(str1,str2);
return 0;
}
为啥输出的是123abc和一个随机的字符?