D是正确的A,B中 p是n的地址 那么如果要输入n 应该是scanf("%d", p);C中 p还没定义 给*p赋值就是给一个没有开辟的地址赋值了D是正确的 意思是p为n的地址,将p地址上的数变成m, 等价于n=m;
A和B中scanf函数要传的参数是地址,需要int*类型的参数,但是A中*p表示是int型,&p表示int **类型,所以不符合。C、中*p指针没有初始化,它还没有存储变量n的地址,和n没有关联起来,直接把n的值给*p。它是无法接受的。
A