青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

天行健 君子當自強而不息

offsetof宏解析


今天看代碼時,發(fā)現(xiàn)一個有用的東東,offsetof(s,m),這是一個宏,MSDN文檔的說明如下:

Retrieves the offset of a member from the beginning of its parent structure.

size_t offsetof(
structName,
memberName
);


Parameters

structName
Name of the parent data structure.


memberName
Name of the member in the parent data structure for which to determine the offset.


Return Value


offsetof returns the offset in bytes of the specified member from the beginning of its parent data structure. It is undefined for bit fields.

Remarks

The offsetof macro returns the offset in bytes of memberName from the beginning of the structure specified by structName. You can specify types with the struct keyword.

Note


offsetof is not a function and cannot be described using a C prototype.

跟蹤代碼發(fā)現(xiàn)定義如下:

#define offsetof(s,m) (size_t)&(((s *)0)->m)

然后到網(wǎng)上查了一下,發(fā)現(xiàn)還真的是很有用,附帶一位大俠的解說:

struct AAA
{
    int i;
    int j;
};

struct AAA *pAAA;
pAAA=new AAA;


這時,pAAA實際上是一個Pointer, 指向某一確定的內(nèi)存地址,比如0x1234;
而 pAAA->i 整體是一個int型變量,其地址是&(pAAA->i) ,'&'為取址運算符;
那么&(pAAA->i)一定等于0x1234,因為i是結構體AAA的第一個元素。
而&(pAAA->j)一定是0x1234 + 0x4 = 0x1238; 因為sizeof(int) = 4;

這個做法的巧妙之處就是:它把“0”作為上例中的pAAA,那么 &(pAAA->j)就是j的offset啦。

解析結果是:
(s *)0 ,將 0 強制轉換為Pointer to "s"
可以記 pS = (s *)0 ,pS是指向s的指針,它的值是0;
那么pS->m就是m這個元素了,而&(pS->m)就是m的地址,而在本例中就是offset啦

再把結果強制轉換為size_t型的就OK 了,size_t其實也就是int啦!!

也就是說:

0 ---> (s *)0

原來的0是數(shù)值類型,現(xiàn)在是結構體指針類型,盡管類型變了,但其值還是不變,也就是說還是0,但這個值的意義變了,現(xiàn)在是地址,而不是數(shù)值。

&(((s *)0)->m)求出字段m的地址值,但由于首地址是0,所以&(((s *)0)->m)求出字段m相對于首地址的偏移值。

posted on 2007-09-24 19:04 lovedday 閱讀(3782) 評論(0)  編輯 收藏 引用 所屬分類: ▲ C Program

公告

導航

統(tǒng)計

常用鏈接

隨筆分類(178)

3D游戲編程相關鏈接

搜索

最新評論

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            午夜精品美女久久久久av福利| 国产一区二区三区黄视频| 欧美理论电影网| 国产女人精品视频| 亚洲欧洲在线免费| 久久国产一区二区| 亚洲人成亚洲人成在线观看图片 | 欧美激情一区二区在线 | 欧美精品一区二| 亚洲免费久久| 老司机精品视频一区二区三区| 一本色道久久综合亚洲精品按摩| 久久精品一区二区| 国产精品入口日韩视频大尺度| 亚洲激情网站| 欧美成人免费播放| 久久久精彩视频| 亚洲欧洲日产国产网站| 亚洲精品欧美精品| 欧美黄色大片网站| 91久久视频| 亚洲一区在线免费| 国产精品久线观看视频| 亚洲午夜激情网页| 夜夜嗨av一区二区三区网站四季av| 免费久久99精品国产自在现线| 极品裸体白嫩激情啪啪国产精品 | 国产一区二区三区丝袜| 亚洲第一二三四五区| 久久久噜噜噜久噜久久| 韩日欧美一区二区三区| 久久这里只有| 久久天天狠狠| 亚洲国产导航| 亚洲国产高清一区| 国产视频久久网| 久久久激情视频| 老色鬼精品视频在线观看播放| 永久免费毛片在线播放不卡| 欧美h视频在线| 美女精品视频一区| 亚洲日本精品国产第一区| 亚洲二区视频在线| 国产在线视频欧美| 欧美 日韩 国产在线| 国产精品国产自产拍高清av王其 | 亚洲美女一区| 久久免费偷拍视频| 久久精品人人做人人综合| 欧美日韩国产一区二区| 亚洲一区二区三| 欧美精品在线观看| 亚洲国产99| 亚洲电影网站| 一本高清dvd不卡在线观看| 亚洲国产影院| 猛干欧美女孩| 欧美大片va欧美在线播放| 韩国亚洲精品| 久久成人国产| 在线视频一区观看| 欧美伊人久久| 一区二区国产日产| 欧美精品福利视频| 亚洲第一黄网| 亚洲精品视频在线观看网站| 久久综合精品国产一区二区三区| 久久久久久色| 国产精品久久久久久久久搜平片| 亚洲欧洲在线观看| 狠狠综合久久av一区二区老牛| 宅男在线国产精品| 亚洲三级免费电影| 欧美精品三级在线观看| 日韩视频在线观看一区二区| 国产综合久久久久久| 久久精品亚洲国产奇米99| 久久先锋资源| 亚洲人成人一区二区三区| 欧美精品123区| 一区二区三区高清在线| 欧美一级理论片| 欧美日韩一区二区在线观看| 欧美成人黑人xx视频免费观看| 最新亚洲一区| 欧美日韩在线三区| 91久久精品国产91久久性色| 99伊人成综合| 欧美激情国产高清| 一区二区av| 久久综合久久综合九色| 亚洲精品国产精品国自产在线 | 久久综合给合久久狠狠狠97色69| 蘑菇福利视频一区播放| 99精品国产高清一区二区| 玖玖综合伊人| 日韩午夜免费| 久久久久久日产精品| 日韩视频一区二区三区在线播放免费观看| 欧美日韩二区三区| 欧美一区二区三区免费观看视频 | 久久九九免费视频| 亚洲精品中文字幕有码专区| 国产精品视频你懂的| 玖玖玖国产精品| 亚洲亚洲精品三区日韩精品在线视频| 亚洲免费观看在线观看| 国产精品一区二区三区免费观看| 一区二区三区国产精华| 免费成人黄色| 最新国产の精品合集bt伙计| 国产精品日本精品| 欧美精品www在线观看| 欧美一区二区三区电影在线观看| 最新国产拍偷乱拍精品| 久久综合福利| 亚洲欧美一区二区三区极速播放| 亚洲国产精品123| 国产在线视频欧美| 国产精品嫩草影院一区二区| 欧美激情视频在线播放| 另类春色校园亚洲| 欧美影视一区| 亚洲欧美日韩在线一区| 六十路精品视频| 欧美一区二区国产| 在线免费观看日本欧美| 国产精品色网| 欧美午夜不卡视频| 小嫩嫩精品导航| 亚洲电影av| 牛牛影视久久网| 久久久亚洲精品一区二区三区| 午夜精品久久久久久久蜜桃app| av成人免费观看| 亚洲三级性片| 亚洲精品黄色| 亚洲伦理自拍| av成人免费观看| 一本色道久久99精品综合 | 夜夜嗨网站十八久久| 亚洲电影视频在线| 亚洲国产精品视频| 亚洲国产综合91精品麻豆| 亚洲国产高清在线| 91久久在线| 99riav久久精品riav| 99精品免费| 亚洲男女自偷自拍| 亚洲国产精品尤物yw在线观看| 黄色在线成人| 亚洲国产女人aaa毛片在线| 亚洲国产日韩欧美在线动漫| 最近看过的日韩成人| 亚洲精品少妇30p| 一本大道久久a久久综合婷婷| 亚洲视频你懂的| 最新高清无码专区| 99热这里只有成人精品国产| 中文国产成人精品| 午夜一区二区三视频在线观看| 欧美中文字幕视频在线观看| 亚洲美女中出| 午夜精品999| 久久久久久久久伊人| 美女在线一区二区| 亚洲毛片av| 性欧美18~19sex高清播放| 久久精品亚洲精品国产欧美kt∨| 美女网站在线免费欧美精品| 欧美精品国产精品日韩精品| 国产精品久在线观看| 怡红院av一区二区三区| 日韩一区二区电影网| 欧美一区二区私人影院日本 | 久久在线免费观看| 最新日韩在线| 亚洲欧美国产va在线影院| 99精品热视频只有精品10| 午夜精品久久久久久99热| 免费精品视频| 国产女优一区| av成人免费在线观看| 久久国产精品久久精品国产| 亚洲福利视频专区| 性娇小13――14欧美| 欧美日韩不卡在线| 狠狠做深爱婷婷久久综合一区| 一区二区三区**美女毛片| 久久人人97超碰国产公开结果| 亚洲人成毛片在线播放女女| 久久成人精品视频| 欧美午夜www高清视频| 亚洲国产二区| 久久久久久久久久久久久9999| 亚洲精选久久| 欧美xart系列在线观看| 欧美激情精品久久久久久久变态| 国产精品综合色区在线观看| 99国内精品久久久久久久软件|