波多在线播放_激情深爱五月_久久欧美精品_成人超碰_国产久_www.pixiv.moe


曙海教育集團(tuán)論壇開發(fā)語言培訓(xùn)專區(qū)C語言開發(fā) → 各位對C語言結(jié)構(gòu)中成員的對齊(alignment)怎樣理解?


  共有8709人關(guān)注過本帖樹形打印

主題:各位對C語言結(jié)構(gòu)中成員的對齊(alignment)怎樣理解?

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


加好友 發(fā)短信
等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
各位對C語言結(jié)構(gòu)中成員的對齊(alignment)怎樣理解?  發(fā)帖心情 Post By:2010-12-10 11:47:29

本來覺得自已很清楚了,后來看到一個例子,又糊涂了。先看一個WATCOM給出的表:(ZP1表示按一個字符對齊) zp1 zp2 zp4 zp8 zp16 sizeof(member) \--------------------------------------- 1 | 0 0 0 0 0 2 | 0 2 2 2 2 4 | 0 2 4 4 4 8 | 0 2 4 8 8 16 | 0 2 4 8 16 x | aligned to largest member 看一段代碼: #include #include typedef struct memo_el { char date[9]; struct memo_el *prev,*next; int ref_number; char sex; } memo; main( ) { printf( "Offset of %s is %d\n", "date", offsetof( memo, date ) ); printf( "Offset of %s is %d\n", "prev", offsetof( memo, prev ) ); printf( "Offset of %s is %d\n", "next", offsetof( memo, next ) ); printf( "Offset of %s is %d\n", "ref_number", offsetof( memo, ref_number ) ); printf( "Offset of %s is %d\n", "sex", offsetof( memo, sex ) ); printf( "Size of %s is %d\n", "memo", sizeof( memo ) ); printf( "Number of padding bytes is %d\n", sizeof( memo ) - (offsetof( memo, sex ) + sizeof( char )) ); return 0; } 輸出: 16位zp1:(毫無疑問) Offset of date is 0 Offset of prev is 9 Offset of next is 11 Offset of ref_number is 13 Offset of sex is 15 Size of memo is 16 Number of padding bytes is 0 16位 zp2、4、8結(jié)果都一樣: Offset of date is 0 Offset of prev is 10 Offset of next is 12 Offset of ref_number is 14 Offset of sex is 16 Size of memo is 18 Number of padding bytes is 1 如果再把成員改一個長整類型, typedef struct memo_el { char date[9]; struct memo_el *prev,*next; long int ref_number; char sex; } memo; 結(jié)果在16位ZP2-8都是這樣: Offset of date is 0 Offset of prev is 10 Offset of next is 12 Offset of ref_number is 16 Offset of sex is 20 Size of memo is 24 Number of padding bytes is 3 現(xiàn)在我無法解釋了~

支持(0中立(0反對(0單帖管理 | 引用 | 回復(fù) 回到頂部

返回版面帖子列表

各位對C語言結(jié)構(gòu)中成員的對齊(alignment)怎樣理解?








簽名
主站蜘蛛池模板: 日韩小视频 | 2021年无线乱码播放高清完整 | 日本黄色一级片视频 | 男女在线观看啪网站 | 成人综合网站 | 久久www免费人成精品 | 不卡视频在线 | 亚洲精品男人天堂 | 亚洲欧美日韩精品高清 | 韩漫重考生漫画画免费读漫画下拉式土豪漫 | 人阁色第四影院在线电影 | 91国内精品久久久久免费影院 | 天天天天天操 | 欧美电影一区 | 色七七网站 | 深夜你懂的在线网址入口 | 久久精品二区亚洲w码 | 欧美日韩视频 | 九九99九九视频在线观看 | 理论片91| 密室逃脱第一季免费观看完整在线 | 亚洲精品乱码久久久久久按摩观 | 91视频专区 | 日日夜夜精品免费视频 | 国产成久久免费精品AV片天堂 | 国产综合在线播放 | 漂流教室韩国电影 | 免费中日高清无专码有限公司 | www.亚洲 | 日本在线你懂的 | 91视频在线观看免费 | 91操美女 | 全免费午夜一级毛片一级毛 | 国产精品福利自产拍网站 | 色婷婷综合久久久中文字幕 | 一区二区三区毛A片特级 | 护士hd欧美free性xxxx | 亚洲国产综合久久精品 | 亚洲精品国产自在久久出水 | 欧美精品午夜论理电影 | 人人爽久久涩噜噜噜蜜桃 |