getbits.c

来自「自己做的常用库和实现的数据结构。public domain.」· C语言 代码 · 共 43 行

C
43
字号
#include <stdio.h>static unsigned getbits(unsigned x, unsigned a, unsigned b); static unsigned get_value(unsigned n);int main(void){	unsigned x;	x = getbits(931u, 5u, 8u);	printf("%u ", x);	return 0;}static unsigned getbits(unsigned x, unsigned a, unsigned b) {	unsigned i, j;	i = get_value(a);	i <<= (sizeof(unsigned) * 8) - a;	i = ~i;	j = get_value(b);	j = ~j;	x &= i;	x &= j;	return x;}static unsigned get_value(unsigned n){	unsigned i, s1=1, s2=0;	for(i=1; i<n; i++) {		s1 *= 2;		s2 += s1;	}		return s2 + 1;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?