c語言左移右移舉例 C語言按位左移運算規(guī)則?
C語言按位左移運算規(guī)則?在C語言中,按位左移的運算符是<<,其規(guī)則如下:對于操作a<<;LTN,1根據(jù)每個二進制值將n位移到高位(寫入左側(cè));2舍入最高位(最左側(cè))n位;3在最低位(最
C語言按位左移運算規(guī)則?
在C語言中,按位左移的運算符是<<,其規(guī)則如下:
對于操作a<<;LTN,
1根據(jù)每個二進制值將n位移到高位(寫入左側(cè));
2舍入最高位(最左側(cè))n位;
3在最低位(最右邊)填充n個零。
簡單示例如下:
示例1
0x12<<< 3=>
b00010010<< 3=>
b10010可以編寫以下程序來驗證:
#include<stdio。H>void check(char a,int n){printf(“0x%HHx<<;lt)}%D=0x%HHxn”,a,n,a<<N)}int main(){check(0x12,3)check(0x9e,2)return 0}
它的運行結(jié)果是
0x12< 3=0x900x9e< 2=0x78
可以看出它與我們的計算結(jié)果是一致的。