首页 > 试题广场 >

将下面的C函数代码补充完整函数srl用算术右移(由值xsra

[问答题]

将下面的C函数代码补充完整函数srl用算术右移(由值xsra给出)来完成逻辑右移,后面的其他操作不包括右移或者除法。函数sra用逻辑右移(由值xsrl给出)来完成算术右移,后面的其他操作不包括右移或者除法。可以通过计算8*Sizeof (int)来确定数据类型int中的位数w。位移量是的取值范围为0〜-1。

unsigned srl(unsigned x, int k) {
/* Perform shift arithmetically*/
unsigned xsra = (int) x >>k;
.
.
.
.
}
int sra(int x, int k) {
/* Perform shift logically*/
int xsrl = (unsigned) x >>k;
.
.
.
}

这道题你会答吗?花几分钟告诉大家答案吧!