ポインタの前に&を使用するとどうなりますか?

The book doesn't really say about what & in front of a pointer gives. enter image description here

6
^^ ...アドレスが保存されているアドレスと同じです。
追加された 著者 John Zwinck,
ポインターについて学ぶべき最も重要なことはポインターについて特別な何もないということです。
追加された 著者 molbdnilo,
あなたの本は実際にそれが与えるものを正確には言いません - それはページのすぐそこに「ポインタ変数pのアドレス」を言います。
追加された 著者 molbdnilo,
&pp のアドレスを表します。あなたの例では、 pint * 型( int へのポインタ)なので、&p は結果になります。 int ** 型( int へのポインタへのポインタ)であるため、代入 p1 =&p が機能します。 * p1p と同等の結果(同じ値と同じ型)を返し、 ** p1 は<�が指す値を返します。 code> p - 値 125 を持つ変数 a です。
追加された 著者 Peter,
^^ ...ポインタに格納されているアドレスと混同しないでください。
追加された 著者 WhozCraig,
ポインタが格納されているアドレスがわかります。
追加された 著者 Osiris,

6 答え

a = int variable
p = address of a
pl = address of p
*p = a
*pl = p
**pl = a
3
追加された
下投票をしてくれたインテリジェントなユーザーに感謝します。私は残りの回答に賛成票を投じました。私は、神のようなレベルの知性がこれらのような活動を命じることになると思う。
追加された 著者 luci88filter,

変数に値を格納すると、

a = 125

値125がメモリのどこかに格納されている

p = &a

pは a が保存されているメモリの場所のアドレスを取得します。

pl = &p

最後に、 pl はポインタ自体が格納されているメモリのアドレスを取得します。

So & is giving you the address of the memory location. As your book is showing you.

3
追加された

For example: you have an integer variable x, in this variable you have the value 52. But to know where you have the address in memory of this variable you use &x, that will point to the address where the variable is stored in memory.

メモリのアドレス y に格納される値が必要な場合は、 * y を使用します。

2
追加された

ポインタ変数p内のaのアドレスを格納します。

quick Google search: https://www.tutorialspoint.com/cprogramming/c_pointers.htm

1
追加された
&を使用しても保存は行われません。あなたがあなたの答えをどのように表現するかに注意してください。
追加された 著者 SamTebbs33,

The book doesn't really say about what & in front of a pointer gives

The book says exactly what & in front of a pointer gives: "Address of pointer variable p".

pl の宣言からわかるように、型は int ** です。

ポインタは任意の型( void * の場合はnone)を指すことができ、これは別のポインタを指します。

0
追加された

& in front of a variable yields the address of the variable.
& in front of a pointer   yields the address of the variable.

0
追加された