⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lbitbits.c

📁 gcc-2.95.3 Linux下最常用的C编译器
💻 C
字号:
#include "f2c.h"#ifndef LONGBITS#define LONGBITS 32#endif integer#ifdef KR_headerslbit_bits(a, b, len) integer a, b, len;#elselbit_bits(integer a, integer b, integer len)#endif{	/* Assume 2's complement arithmetic */	unsigned long x, y;	x = (unsigned long) a;	y = (unsigned long)-1L;	x >>= b;	y <<= len;	return (integer)(x & ~y);	} integer#ifdef KR_headerslbit_cshift(a, b, len) integer a, b, len;#elselbit_cshift(integer a, integer b, integer len)#endif{	unsigned long x, y, z;	x = (unsigned long)a;	if (len <= 0) {		if (len == 0)			return 0;		goto full_len;		}	if (len >= LONGBITS) { full_len:		if (b >= 0) {			b %= LONGBITS;			return (integer)(x << b | x >> LONGBITS -b );			}		b = -b;		b %= LONGBITS;		return (integer)(x << LONGBITS - b | x >> b);		}	y = z = (unsigned long)-1;	y <<= len;	z &= ~y;	y &= x;	x &= z;	if (b >= 0) {		b %= len;		return (integer)(y | z & (x << b | x >> len - b));		}	b = -b;	b %= len;	return (integer)(y | z & (x >> b | x << len - b));	}

⌨️ 快捷键说明

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