你理解错了,不是 str+2 是 xy ,str+2 是指向 z;p1 + 2 是 cd ;p2 + 1 是 BCD,所以 strcat(p1 + 2, P2 + 1)的值就是 cdBCD;然后 strcpy 拷贝覆盖的起始位 是 z,也就是 str 这个字符串从 z开始替换成 cdBCD,所以答案就是 D