亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

c語言中符號<<是什么意思

c語言中符號<<是什么意思

C
MMMHUHU 2019-05-31 07:02:16
c語言中符號<<是什么意思
查看完整描述

4 回答

?
拉莫斯之舞

TA貢獻1820條經驗 獲得超10個贊

左移運算符(<<)

將一個運算對象的各二進制位全部左移若干位(左邊的二進制位丟棄,右邊補0)。

例:a = a << 2 將a的二進制位左移2位,右補0,

左移1位后a = a * 2;

若左移時舍棄的高位不包含1,則每左移一位,相當于該數乘以2。
右移運算符(>>)

將一個數的各二進制位全部右移若干位,正數左補0,負數左補1,右邊丟棄。

操作數每右移一位,相當于該數除以2。

例如:a = a >> 2 將a的二進制位右移2位,

左補0 or 補1 得看被移數是正還是負。



查看完整回答
反對 回復 2019-06-01
?
大話西游666

TA貢獻1817條經驗 獲得超14個贊

左移運算符
<<(左移)
運算規則:
按二進制形式把所有的數字向左移動對應的位數,高位移出(舍棄),低位的空位補零。
語法格式:
需要移位的數字 << 移位的次數
例如: 3 << 2,則是將數字3左移2位
計算過程:
3 << 2 首先把3轉換為二進制數字0000 0011,然后把該數字高位(左側)的兩個零移出,其他的數字都朝左平移2位,最后在低位(右側)的兩個空位補零。則得到的最終結果是0000 1100,則轉換為十進制是12。



查看完整回答
反對 回復 2019-06-01
?
HUWWW

TA貢獻1874條經驗 獲得超12個贊


herenzi 
2017-12-01

展開全部

意思是向左移位

比如char a = #0000 0001;
那么 a << 1 == #0000 0010;
可以看到1向左移動了一位,并且在原本的1位上添加了一個0
那么這個時候pinrtf("%d",a); 結果輸出2
同理char c = #0010 1100; //c ==44
c << 2 == #1011 0000;
printf("%d",c); //輸出 174

 





查看完整回答
反對 回復 2019-06-01
  • 4 回答
  • 0 關注
  • 699 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號