欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 請教一下大家16位與8位怎么位或?謝謝 [打印本頁]

作者: fengxiaoliang    時間: 2021-3-2 15:24
標(biāo)題: 請教一下大家16位與8位怎么位或?謝謝
如題
作者: wulin    時間: 2021-3-2 20:41
        unsigned int  a;
        unsigned char b;
        a|=b;    //低8位按位或
        a|=b<<8; //高8位按位或
作者: 黃youhui    時間: 2021-3-3 08:31
wulin 發(fā)表于 2021-3-2 20:41
unsigned int  a;
        unsigned char b;
        a|=b;    //低8位按位或

也可以這樣
int a;
char b;
int c;
a=(int)b|a;//強(qiáng)制轉(zhuǎn)換類型

c = b;
c |=a;//加中間變量,低8位或
c|=(a<<8);//加中間變量,高8位或,

我一般不記邏輯符號的優(yōu)先級,直接加括號省時省力。
作者: wufa1986    時間: 2021-3-3 08:45
直接操作,編譯器會處理
作者: 我要自學(xué)網(wǎng)ing    時間: 2021-3-3 09:09
假如定義8位為a,16位為b.b=b<<8|a;這樣就可以了
作者: fengxiaoliang    時間: 2021-3-3 09:56
wulin 發(fā)表于 2021-3-2 20:41
unsigned int  a;
        unsigned char b;
        a|=b;    //低8位按位或

如果
unsigned int a;
unsigned char b;
unsigned char c;
c=a|b;
那a的高八位是按0補(bǔ)還是按1補(bǔ)位啊?
我知道與是低八位是按位與,高八位是補(bǔ)0。
作者: fengxiaoliang    時間: 2021-3-3 09:56
黃youhui 發(fā)表于 2021-3-3 08:31
也可以這樣
int a;
char b;

如果
unsigned int a;
unsigned char b;
unsigned char c;
c=a|b;
那a的高八位是按0補(bǔ)還是按1補(bǔ)位啊?
我知道與是低八位是按位與,高八位是補(bǔ)0。
作者: wulin    時間: 2021-3-3 10:48
fengxiaoliang 發(fā)表于 2021-3-3 09:56
如果
unsigned int a;
unsigned char b;

你這求的是a|b的結(jié)果c,沒有移位哪來補(bǔ)0補(bǔ)1之說,a、b的值根本就沒有變。
作者: 黃youhui    時間: 2021-3-3 13:17
fengxiaoliang 發(fā)表于 2021-3-3 09:56
如果
unsigned int a;
unsigned char b;

補(bǔ)0,因為b會被強(qiáng)制轉(zhuǎn)換成16位,0x01變成0x0001





歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1