Der Unterschied zwischen & und * in C++ ist: & nimmt die Variablenadresse und speichert die Adresse in der Zeigervariablen. Dereferenzieren Sie eine Zeigervariable, um den Wert zu erhalten, auf den sie zeigt.
Der Unterschied zwischen & und * in C++
Kurze Antwort:
& nimmt die Variablenadresse an, während * die Adresse dereferenziert.
Detaillierte Erklärung:
Adresse abrufen (&):
&
-Operator wird verwendet, um die Speicheradresse einer Variablen abzurufen. &
运算符用于获取变量的内存地址。例如:
int num = 10; int *ptr = #
上述代码中,ptr
现在指向 num
的内存地址。
解引用地址 (*):
*
运算符用于解引用指针变量,获取其指向的值。*
运算符对指针变量进行读写操作。例如:
int num = 10; int *ptr = # *ptr = 20;
上述代码中,*ptr
解引用了 ptr
,并更改了指向的值,即 num
的值变为 20。
区别总结:
操作符 | 用途 |
---|---|
& |
获取变量地址 |
* |
解引用指针变量,获取指向的值 |
需要注意的是,&
和 *
运算符通常成对使用。使用 &
获取地址,然后使用 *
Speichern Sie die Adresse in einer anderen Variablen, die als Zeigervariable bezeichnet wird.
ptr
nun auf die Speicheradresse von num
. 🎜🎜🎜Dereferenzierungsadresse (*):🎜🎜🎜🎜*
-Operator wird verwendet, um eine Zeigervariable zu dereferenzieren und den Wert zu erhalten, auf den sie zeigt. 🎜Es entspricht dem Zugriff auf die Variable, auf die verwiesen wird. 🎜Sie können den Operator *
verwenden, um Zeigervariablen zu lesen und zu schreiben. 🎜🎜Zum Beispiel: 🎜🎜rrreee🎜Im obigen Code dereferenziert *ptr
ptr
und ändert den Wert, auf den verwiesen wird, d. h. num wird 20. 🎜🎜🎜 Zusammenfassung der Unterschiede: 🎜🎜Operator | Zweck |
---|---|
& |
Variablenadresse abrufen |
* | Dereferenzieren Sie die Zeigervariable und erhalten Sie den Wert, auf den gezeigt wird |
&
und * code >-Operatoren werden normalerweise paarweise verwendet. Verwenden Sie <code>&amp;amp;amp;amp;amp;amp;
, um die Adresse abzurufen, und verwenden Sie dann *
, um die Adresse zu dereferenzieren, um auf den Wert zuzugreifen oder ihn zu ändern. 🎜Das obige ist der detaillierte Inhalt vonDer Unterschied zwischen & und * in C++. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!