整形 (C語言)地址為什么要變成指針才能賦值給指針變量呢?
(C語言)地址為什么要變成指針才能賦值給指針變量呢?指針就是地址。所以你的問題不對。我的理解是,我想問為什么變量需要取地址,然后給指針變量賦值,即int a,*P P=&a讓我們來談談一個小概念,數(shù)字
(C語言)地址為什么要變成指針才能賦值給指針變量呢?
指針就是地址。所以你的問題不對。
我的理解是,我想問為什么變量需要取地址,然后給指針變量賦值,即int a,*P P=&a
讓我們來談談一個小概念,數(shù)字23,在句子“我今年23歲”中,23的意思是年齡;在句子“我的偶像穿著23號籃球服”,23是籃球服的號碼。也就是說,數(shù)字23在不同的句子環(huán)境中具有不同的語義。
在本文中,我們定義了兩個成形變量。在內(nèi)存中,它們都存儲二進制代碼,但語義不同。一個用于存儲整數(shù),另一個用于存儲指向成形變量的指針??傊?,這兩個變量是不一樣的。一個是存儲常用值的公共變量,另一個是存儲另一個變量的物理地址的特殊變量(因此我們需要添加*符號來區(qū)分它)。
你能理解嗎?如果你不明白,你可以請我再回答這個問題。
如何取指針變量的地址?
要獲取任何變量的地址,只需使用地址運算符-&。例如,int ICHAR*P//定義了一個字符指針結(jié)構(gòu)test oo可以由&;address操作符操作。Int*pi=&ICHAR**PX=&P//保存指針變量的地址。記住用兩個*符號表示它是指向指針的指針。結(jié)構(gòu)測試*PS=&O