csapp2e homework 2.77

来源:互联网 发布:编程c图形库砖块金字塔 编辑:程序博客网 时间:2024/05/22 15:10
#include<stdio.h>#define debug_print(x) printf(#x"\t%d\n",x)int divide_power2(int x,int k){int w = sizeof(int) << 3;int sign = x >> (w - 1) ;int result;( sign == 0 && (result = (x >> k)) ) || ( sign == -1 && (result = ((x + (1 << k)-1)>> k)) );return  result;}int main(){debug_print(100>>3);debug_print(divide_power2(100,3));debug_print(-100>>3);debug_print(divide_power2(-100,3));return 0;}

0 0