使用intptr_t和uintptr_t

intptr_t 和uintptr_t 類型用來存放指針地址何缓。它們提供了一種可移植且安全的方法聲明指針沃疮,而且和系統(tǒng)中使用的指針長度相同,對于把指針轉(zhuǎn)化成整數(shù)形式來說很有用今野。

intptr_t是為了跨平臺牙寞,其長度總是所在平臺的位數(shù)饺鹃,所以用來存放地址。

uintptr_t 是intptr_t 的無符號版本间雀。對于大部分操作悔详,用intptr_t 比較好。uintptr_t 不像intptr_t 那樣靈活惹挟。下面的例子說明如何使用intptr_t:

int num;

intptr_t *pi = #

如果像下面那樣試圖把整數(shù)地址賦給uintptr_t 類型的指針茄螃,我們會得到一個語法錯誤:

uintptr_t *pu = #

錯誤看起來是這樣的:

error: invalid conversion from 'int*' to

'uintptr_t* {aka unsigned int*}' [-fpermissive]

不過,用強制類型轉(zhuǎn)換來賦值是可以的:

intptr_t *pi = #

uintptr_t *pu = (uintptr_t*)#

如果不轉(zhuǎn)換類型连锯,不能將uintptr_t 用于其他類型:

char c;

uintptr_t *pc = (uintptr_t*)&c;

當(dāng)可移植性和安全性變得重要時归苍,就應(yīng)該使用這些類型。不過运怖,為簡單起見拼弃,我們的例子中不會使用。

避免把指針轉(zhuǎn)換成整數(shù)摇展。如果指針是64 位吻氧,整數(shù)只有4 字節(jié)時就會丟失信息。

早期的Intel 處理器采用16 位的分段架構(gòu)咏连,近指針和遠指針也是相對的盯孙。今天的虛擬內(nèi)存架構(gòu)上就不是這樣了。遠指針和近指針是C 標(biāo)準(zhǔn)的擴展祟滴, 用來支持早期的Intel 處理器的分段架構(gòu)振惰。近指針一次只能尋址64 KB 的內(nèi)存。遠指針最多可以尋址1 MB 內(nèi)存垄懂,但是比近指針慢骑晶。巨指針是規(guī)范化過的遠指針痛垛,使用盡可能高的段。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末透罢,一起剝皮案震驚了整個濱河市榜晦,隨后出現(xiàn)的幾起案子冠蒋,更是在濱河造成了極大的恐慌羽圃,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,290評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件抖剿,死亡現(xiàn)場離奇詭異朽寞,居然都是意外死亡,警方通過查閱死者的電腦和手機斩郎,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評論 2 385
  • 文/潘曉璐 我一進店門脑融,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人缩宜,你說我怎么就攤上這事肘迎。” “怎么了锻煌?”我有些...
    開封第一講書人閱讀 156,872評論 0 347
  • 文/不壞的土叔 我叫張陵妓布,是天一觀的道長。 經(jīng)常有香客問我宋梧,道長匣沼,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,415評論 1 283
  • 正文 為了忘掉前任捂龄,我火速辦了婚禮释涛,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘倦沧。我一直安慰自己唇撬,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 65,453評論 6 385
  • 文/花漫 我一把揭開白布展融。 她就那樣靜靜地躺著局荚,像睡著了一般。 火紅的嫁衣襯著肌膚如雪愈污。 梳的紋絲不亂的頭發(fā)上耀态,一...
    開封第一講書人閱讀 49,784評論 1 290
  • 那天,我揣著相機與錄音暂雹,去河邊找鬼首装。 笑死,一個胖子當(dāng)著我的面吹牛杭跪,可吹牛的內(nèi)容都是我干的仙逻。 我是一名探鬼主播驰吓,決...
    沈念sama閱讀 38,927評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼系奉!你這毒婦竟也來了檬贰?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,691評論 0 266
  • 序言:老撾萬榮一對情侶失蹤缺亮,失蹤者是張志新(化名)和其女友劉穎翁涤,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體萌踱,經(jīng)...
    沈念sama閱讀 44,137評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡葵礼,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,472評論 2 326
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了并鸵。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片鸳粉。...
    茶點故事閱讀 38,622評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖园担,靈堂內(nèi)的尸體忽然破棺而出届谈,到底是詐尸還是另有隱情,我是刑警寧澤弯汰,帶...
    沈念sama閱讀 34,289評論 4 329
  • 正文 年R本政府宣布艰山,位于F島的核電站,受9級特大地震影響蝙泼,放射性物質(zhì)發(fā)生泄漏程剥。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,887評論 3 312
  • 文/蒙蒙 一汤踏、第九天 我趴在偏房一處隱蔽的房頂上張望织鲸。 院中可真熱鬧,春花似錦溪胶、人聲如沸搂擦。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽瀑踢。三九已至,卻和暖如春才避,著一層夾襖步出監(jiān)牢的瞬間橱夭,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工桑逝, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留棘劣,地道東北人。 一個月前我還...
    沈念sama閱讀 46,316評論 2 360
  • 正文 我出身青樓楞遏,卻偏偏與公主長得像茬暇,于是被迫代替她去往敵國和親首昔。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,490評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 轉(zhuǎn)至元數(shù)據(jù)結(jié)尾創(chuàng)建: 董瀟偉糙俗,最新修改于: 十二月 23, 2016 轉(zhuǎn)至元數(shù)據(jù)起始第一章:isa和Class一....
    40c0490e5268閱讀 1,690評論 0 9
  • Jni數(shù)據(jù)類型 Jni方法 來自 http://blog.chinaunix.net/uid-22028680-i...
    FlyDragonInSky閱讀 906評論 0 0
  • 1.在C/C++中實現(xiàn)本地方法 生成C/C++頭文件之后勒奇,你就需要寫頭文件對應(yīng)的本地方法。注意:所有的本地方法的第...
    JayQiu閱讀 2,336評論 0 3
  • 有時候購買的商品巧骚,屬性很多赊颠,想做成表格進行篩選。自然用技術(shù)宅的爬蟲方式做了 ```python # -*- ...
    超哥__閱讀 4,230評論 0 8
  • 雖然我出生在沿海网缝,對大海巨税、沙灘再熟悉不過蟋定,但看到海南的大海和沙灘粉臊,還是不由得驚嘆它的美。白色細軟的沙子和湛藍的海水...
    立雪寒梅1閱讀 487評論 0 0