__ffs.h

来自「LINUX 2.6.17.4的源码」· C头文件 代码 · 共 44 行

H
44
字号
#ifndef _ASM_GENERIC_BITOPS___FFS_H_#define _ASM_GENERIC_BITOPS___FFS_H_#include <asm/types.h>/** * __ffs - find first bit in word. * @word: The word to search * * Undefined if no bit exists, so code should check against 0 first. */static inline unsigned long __ffs(unsigned long word){	int num = 0;#if BITS_PER_LONG == 64	if ((word & 0xffffffff) == 0) {		num += 32;		word >>= 32;	}#endif	if ((word & 0xffff) == 0) {		num += 16;		word >>= 16;	}	if ((word & 0xff) == 0) {		num += 8;		word >>= 8;	}	if ((word & 0xf) == 0) {		num += 4;		word >>= 4;	}	if ((word & 0x3) == 0) {		num += 2;		word >>= 2;	}	if ((word & 0x1) == 0)		num += 1;	return num;}#endif /* _ASM_GENERIC_BITOPS___FFS_H_ */

⌨️ 快捷键说明

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