📌 變數就像一個房子
裡面放著數字或字
int a = 10;
📌 每個房子都有門牌號碼
像我們住的家都有「地址」
電腦裡的每個房子(變數)也有一個「位址」
a
的門牌 → 0x61ff0c
📌 指標變數不像房子裡裝東西,它裝的是「房子的地址」
所以指標就像拿著一張寫著「房子在哪裡」的小紙條
如果我們有一張紙條(指標),上面寫著「去找房子 a」
那我們就能跟著地址走,找到房子,拿到裡面的東西
p = &a;
→ 我把房子 a
的地址寫到紙條 p
上。p
→ 我打開地圖去找那個房子,拿裡面的數字。📌 每個變數在電腦記憶體中都有自己獨有的位置
#include <iostream>
using namespace std;
int main()
{
int a = 10;
cout << "a 的值: " << a << endl;
cout << "a 的地址: " << &a << endl;
return 0;
}
📌 型態 *名稱
int a = 10;
int *p = &a;
📌 &
→ 變數的地址
📌 *
→ 指標指向的值
#include <iostream>
using namespace std;
int main()
{
int a = 10;
int *p = &a;
cout << "a 的值: " << a << endl;
cout << "p 儲存的位址: " << p << endl;
cout << "*p 取得的值: " << *p << endl;
return 0;
}
📌 指標就是存放「記憶體地址」的變數
讓我們可以間接處理資料
就像房子與地址:
&
→ 房子地址*
→ 打開房子拿東西