Hội nghị C ++
Nhận địa chỉ bộ nhớ và giá trị
Trong ví dụ ở trang trước, chúng ta đã sử dụng biến con trỏ để lấy địa chỉ bộ nhớ của một biến (được sử dụng cùng với toán tử &
tham chiếu ). Tuy nhiên, bạn cũng có thể sử dụng con trỏ để lấy giá trị của biến bằng cách sử dụng *
toán tử (toán tử tham chiếu ):
Thí dụ
string food = "Pizza"; // Variable declaration
string* ptr =
&food; // Pointer declaration
//
Reference: Output the memory address of food with the pointer (0x6dfed4)
cout <<
ptr << "\n";
//
Dereference: Output the value of food with the pointer (Pizza)
cout <<
*ptr << "\n";
Lưu ý rằng *
dấu hiệu có thể gây nhầm lẫn ở đây, vì nó thực hiện hai điều khác nhau trong mã của chúng tôi:
- Khi được sử dụng trong khai báo (string * ptr), nó tạo ra một biến con trỏ .
- Khi không được sử dụng trong khai báo, nó hoạt động như một toán tử tham chiếu .