C语言中(P=6 int *s和int s)*S=&P和S=&P有什么区别吗???求详解。。。

解释一下(int **P,*s,k=20:;S=&K; P=&S; 是不是 **P=*s=20)
2025-04-30 10:15:05
推荐回答(3个)
回答1:

int**p是取指向int*p的指针,相当于是一个装了int*p的地址,int*s是指针变量,就是*s的地址,int k是整形变量,s=&k就是把k的地址给S,也就相当于把k的地址给int*s这个地址。p=&s就是把s的地址又付给地址p,是的**p=*s=20。望采纳

回答2:

*S=&P是将P的地址 数据如(2000H)赋给s,,后者是将变量p的值赋给s;

P中存放的是指针S的地址,不是变量k的值

回答3:

*s=&p和s=*p
*s=&p
这是把p的地址赋给s所指的地址区域,s必是指针,或地址,p可以是指针,但一般来说是普通变量。
s=*p
这是把p指向地址的存值赋给变量s,p必是指针,或地址,s可以是指针,但一般来说是普通变量。