Re: [問題] 位元運算問題?
※ 引述《zerg7475 (O_Q)》之銘言:
: 寫一函數,將一8bit的資料左右邊交換
: void swap_byte(unsigned char p)
: 例如
: unsign char p;
: p=0x38;
: q=swap_byte(p);
: q=0x83;
: 想到方法是
: unsigned char a=0x01; 然後0x01<<=1;一個一個比較
: 最後前面四位元乘以16後面四個位元除以16
: 但unsign char用乘法運算好像也不是很正確
: 感謝
再請問一下
是不是因為宣告為char
q = (p>>4) + (p<<4)
所以p>>4和p<<4的右邊四個位元和左邊四個位元會消失?
用int好像就不是這樣
感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 219.85.172.207
推
02/23 10:25, , 1F
02/23 10:25, 1F
→
02/23 10:52, , 2F
02/23 10:52, 2F
→
02/23 21:43, , 3F
02/23 21:43, 3F
推
02/26 23:13, , 4F
02/26 23:13, 4F
→
02/26 23:14, , 5F
02/26 23:14, 5F
→
02/26 23:21, , 6F
02/26 23:21, 6F
→
02/26 23:21, , 7F
02/26 23:21, 7F
討論串 (同標題文章)