概述
@2018-10-31
负数的左右移位(变量自移位)
验证代码
1 #include <stdio.h> 2 #include <stdlib.h> 3 4 /** 5 * @ i <<= 1 & i >>= 1 6 * i为正,右移高位补0,左移低位补0 7 * i为负,右移高位补1,左移低位补0 8 */ 9 10 11 12 void leftRightShift(int number, int bit) 13 { 14 char buf[32]; 15 int temp = number; 16 17 printf("%dn", number); 18 itoa(number, buf, 2); 19 printf("%sn", buf); 20 21 number >>= bit; 22 printf("%dn", number); 23 itoa(number, buf, 2); 24 printf("%sn", buf); 25 26 number = temp; 27 number <<= bit; 28 printf("%dn", number); 29 itoa(number, buf, 2); 30 printf("%sn", buf); 31 } 32 33 34 int main(void) 35 { 36 int test1 = 1024; 37 int test2 = -1024; 38 39 40 leftRightShift(test1, 1); 41 leftRightShift(test2, 1); 42 43 }
转载于:https://www.cnblogs.com/skullboyer/p/9884526.html
最后
以上就是无辜寒风为你收集整理的负数的左右移位的全部内容,希望文章能够帮你解决负数的左右移位所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复