#include <stdio.h>
int main()
{
int x=10;
int *p=&x;
foo(&p);
printf("%d ",*p);
printf("%d ",*p);
}
void foo(int** l)
{
int j=20;
*l=&j;
printf("%d ",**l);
}
你能解释为什么输出是[20 20垃圾]? 为什么我得不到20 20 20? foo函数调用后的两个print语句都是相同的。