double x=3.141593,*pointer=&x; &(&(*pointer))//什么意思

发布网友 发布时间:2022-04-22 22:56

我来回答

3个回答

热心网友 时间:2023-08-21 12:17

double x=3.141593,*pointer=&x; 定义两个变量 一个是x 一个是double*型的指针pointer 并将pointer指向x的地址 也就是说 后面(*pointer)得到的是x的值 &是解引用 使用&得到的是操作的变量的地址 这里得到的是x的地址 再做&ji解引用 得到的就是指针pointer的地址了 其实 &和*lian'zai连在一起可以成对抵消 这里等价于 &pointer 意思是取指针pointer的地址

热心网友 时间:2023-08-21 12:18

x为double型变量,值为3.141593
pointer为指向double类型的指针变量,这里它指向变量x,即值为x的地址
*pointer为取pointer所指向double型变量,值为3.141593
&(*pointer)为取pointer所指向double型变量的地址。
&(&(*pointer))则是错误的。意是取上面一行的值是地址,但这个值仅仅是计算出来的,并不存在于内存中,所以取这个值的地址是错误的。追问哦原来是错的 我是在 谭浩强的 书上看到的啊

追答这个你可以自己试一下,看能不能编译通过。

热心网友 时间:2023-08-21 12:18

我已经把数学忘了好几年了

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com