#include <stdio.h>
main()
{ char *p1,*p2;
p1=(char*)calloc (20,sizeof(char));
p2=p1;
scanf ("%s%s",p1,p2);
printf("%s%s\n",p1,p2);}
哪位大师能告诉一下输出的结果啊? 谢谢! 解释一下
能在具体解释一下吗? 谢谢
追答p1,p2指向的是同一个内存块的起始地址,
当你输入字符串的时候,
先输入p1,再输入p2,实际上p2的内容覆盖了p1刚才输入的内容
所以最后该内存块是p2输入的内容
同时由于p1和p2指向同一个内存块的起始地址,
所以p1的内容和p2一样的。