close

我們都知道當宣告一個變數的時候,

即是在規範內的記憶體內分配一塊適合的記憶體區塊給該變數

之後該變數即擁有了自己的一片地,以及所謂的記憶體地址(Address),

如同地址般的,例如在地址"708永華路二段6號"的內容是台南市政府大樓,還有一堆零零摳摳的東西

那我們就暫時這樣子宣告

# char some_where[] = "台南市政府";

那我們可以很直覺的認為,

# some_where = 708永華路二段6號;

然後也可以這樣子認為,

# char *address = some_where;

那麼依照往常的邏輯

*address = 708永華路二段6號 ???

錯!它媽的錯了!代誌不像我想得那樣

事實卻是

address = 708永華路二段6號

*address = "台南市政府";

指標就是那麼的讓一般人如我那樣的猜不透阿!!

總歸而言

address:指標所指向的記憶體起始位址

*address:指標所指向的記憶體內容

somewhere[]:陣列元素,通常使用 &somewhere[i] 可以取得該元素的記憶體位址在指派給指標

somewhere:陣列變數,直接表示該陣列的起始位址,不用搭配 & 就可直接指派給指標該陣列的起始記憶體位址

目前的想法~~

arrow
arrow
    文章標籤
    指標
    全站熱搜

    阿奇 發表在 痞客邦 留言(0) 人氣()