#include <stdio.h>
void insert(char str1[], char str2[], int idx)
{
char* p, * q;
p = str1;
int i = 0;
for (i = 0; i < idx; i++)
p++; // p指向 c
while (*str2 != '\0')
{
q = p;
while (*q != '\0')
q++;
while(q >= p)
{
*(q + 1) = *q;
q --;
}
q++;
*q = *str2;
str2++;
p++;
}
}
int main()
{
char a[10] = "abcd";
char b[5] = "kkk";
insert(a, b, 2);
printf("%s\n", a);
}
请问 *(q + 1 ) = *q 是把d 换成c吗 ?