找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1386|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

簡單的代碼,求大神告知,謝謝你

[復(fù)制鏈接]
回帖獎勵 50 黑幣 回復(fù)本帖可獲得 50 黑幣獎勵! 每人限 1 次
跳轉(zhuǎn)到指定樓層
樓主


答案: 3  pg.state=3
  疑問: 結(jié)構(gòu)體的大小是所有成員的內(nèi)存之和,我覺得是sizeof(pg) 為7
            state 占用了3位,101,應(yīng)該為5  即pg.state=5
  求大神告知,謝謝你!
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:871393 發(fā)表于 2021-4-8 12:57 | 只看該作者
冒號后面是占用幾位
同類型的short可以擠到一起  只要不超過sizeof(short)的位數(shù)  就算一個short  就是2;
char也可以擠到一起 一共8位正好是一個sizeof(char)  也算一個char  就是1;
一共就是3

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復(fù)

使用道具 舉報

板凳
ID:871393 發(fā)表于 2021-4-8 13:03 | 只看該作者
77599585 發(fā)表于 2021-4-8 12:57
冒號后面是占用幾位
同類型的short可以擠到一起  只要不超過sizeof(short)的位數(shù)  就算一個short  就是2;
...

后面的問題我也不懂 希望你弄明白之后回復(fù)我一下 互相學(xué)習(xí)哈
回復(fù)

使用道具 舉報

地板
ID:592807 發(fā)表于 2021-4-8 13:48 | 只看該作者
77599585 發(fā)表于 2021-4-8 13:03
后面的問題我也不懂 希望你弄明白之后回復(fù)我一下 互相學(xué)習(xí)哈

不報錯嗎?沒有湊成3個F,少了一位。這種結(jié)構(gòu)體一般會強(qiáng)制配成8位  16位  32位的,隨便定義一位也要湊齊。
假設(shè)你不報錯,優(yōu)化自動給你添加了最后一位。

pg這個結(jié)構(gòu)體就是一個16位的類型(定義了15個,幫你補(bǔ)一個)
所以sizeof(pg)應(yīng)該等于4才對
pg.state=5



另外unsigned short mode:4  帶變得是mode只取unsigned short中的最低4位

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復(fù)

使用道具 舉報

5#
ID:592807 發(fā)表于 2021-4-8 13:56 | 只看該作者
77599585 發(fā)表于 2021-4-8 13:03
后面的問題我也不懂 希望你弄明白之后回復(fù)我一下 互相學(xué)習(xí)哈

看錯了,重新看一下。兩個short合起來不超過8,占用1個字節(jié),剩下的三個合起來等于8,占用一個字節(jié)合起來就是3個字節(jié)。

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復(fù)

使用道具 舉報

6#
ID:895406 發(fā)表于 2021-4-8 14:13 | 只看該作者
77599585 發(fā)表于 2021-4-8 13:03
后面的問題我也不懂 希望你弄明白之后回復(fù)我一下 互相學(xué)習(xí)哈

好的沒問題,謝謝你!
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表