Toán tử lấy địa chỉ (
&
).
Vào thời điểm mà chúng ta khai báo một biến thì nó phải được lưu trữ trong
một vị trí cụ thể trong bộ nhớ. Nói chung chúng ta không quyết định nơi nào
biến đó được đặt - thật may mắn rằng điều đó đã được làm tự động bởi trình
biên dịch và hệ điều hành, nhưng một khi hệ điều hành đã gán một địa chỉ cho
biến thì chúng ta có thể muốn biết biến đó được lưu trữ ở đâu.
Điều này có thể được thực hiện bằng cách đặt trước tên biến một dấu và (
&
), có
nghĩa là "địa chỉ của". Ví dụ:
ted = &andy;
sẽ gán cho biến
ted
địa chỉ của biến
andy
, vì khi đặt trước tên biến
andy
dấu và
(
&
) chúng ta không còn nói đến nội dung của biến đó mà chỉ nói đến địa chỉ của
nó trong bộ nhớ.
Giả sử rằng biến
andy
được đặt ở ô nhớ có địa chỉ
1776
và chúng ta viết như
sau:
andy = 25;
fred = andy;
ted = &andy;
kết quả sẽ giống như trong sơ đồ dưới đây:
Chúng ta đã gán cho
fred
nội dung của biến
andy
như chúng ta đã làm rất lần
nhiều khác trong những phần trước nhưng với biến
ted
chúng ta đã gán địa chỉ
mà hệ điều hành lưu giá trị của biến
andy
, chúng ta vừa giả sử nó là
1776
.
Những biến lưu trữ địa chỉ của một biến khác (như
ted
ở trong ví dụ trước)