Rumah >pembangunan bahagian belakang >C++ >Perbezaan antara & dan * dalam c++
Perbezaan antara & dan * dalam C++ ialah: & mengambil alamat pembolehubah dan menyimpan alamat dalam pembolehubah penunjuk. Nyahrujuk pembolehubah penunjuk untuk mendapatkan nilai yang ditunjukkannya.
Perbezaan antara & dan * dalam C++
Jawapan ringkas:
& mengambil alamat berubah, manakala * menolak alamat.
Penjelasan terperinci:
Dapatkan alamat (&):
&
运算符用于获取变量的内存地址。例如:
int num = 10; int *ptr = #
上述代码中,ptr
现在指向 num
的内存地址。
解引用地址 (*):
*
运算符用于解引用指针变量,获取其指向的值。*
运算符对指针变量进行读写操作。例如:
int num = 10; int *ptr = # *ptr = 20;
上述代码中,*ptr
解引用了 ptr
,并更改了指向的值,即 num
的值变为 20。
区别总结:
操作符 | 用途 |
---|---|
& |
获取变量地址 |
* |
解引用指针变量,获取指向的值 |
需要注意的是,&
和 *
运算符通常成对使用。使用 &
获取地址,然后使用 *
Simpan alamat dalam pembolehubah lain, yang dipanggil pembolehubah penunjuk.
ptr
kini menunjuk ke alamat memori num
. 🎜🎜🎜Alamat penyahrujukan (*):🎜🎜🎜🎜 Pengendali*
untuk membaca dan menulis pembolehubah penunjuk. 🎜🎜Contohnya: 🎜🎜rrreee🎜Dalam kod di atas, *ptr
menolak rujukan ptr
dan menukar nilai yang ditunjuk, iaitu, num menjadi 20. 🎜🎜🎜 Ringkasan perbezaan: 🎜🎜Operator | Tujuan |
---|---|
& |
Dapatkan alamat berubah |
* | Nyahrujuk pembolehubah penunjuk dan dapatkan nilai yang ditunjuk ke |
&
dan * kod > operator biasanya digunakan secara berpasangan. Gunakan <code>&amp;amp;amp;amp;amp;
untuk mendapatkan alamat, kemudian gunakan *
untuk membatalkan rujukan alamat untuk mengakses atau mengubah suai nilai. 🎜Atas ialah kandungan terperinci Perbezaan antara & dan * dalam c++. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!