isset(9) [netbsd man page]
SETBIT(9) BSD Kernel Developer's Manual SETBIT(9) NAME
setbit -- macros related to bitmaps SYNOPSIS
#include <sys/param.h> void setbit(array, x); void clrbit(array, x); int isset(array, x); int isclr(array, x); DESCRIPTION
The setbit family of macros operate with bitmaps, also known as bit arrays. In a nutshell, setbit() sets the bit x in array, clrbit() clears it, isset() tests whether x is set, and isclr() returns 1 if x is not set. EXAMPLES
The following example declares a buffer of 10 chars, treating it as an array of 80 bits: char buf[10]; ... setbit(buf, 12); /* set the fifth bit in the second byte */ SEE ALSO
bitstring(3) CAVEATS
The number of valid bits in a given array is assumed to be multiple of CHAR_BIT, the number of bits for smallest object that is not a bit- field. BSD
March 1, 2010 BSD
Check Out this Related Man Page
FFS32(3) BSD Library Functions Manual FFS32(3) NAME
ffs32, ffs64, fls32, fls64 -- find first or last bit set SYNOPSIS
#include <sys/bitops.h> int ffs32(uint32_t n); int ffs64(uint64_t n); int fls32(uint32_t n); int fls64(uint64_t n); DESCRIPTION
The ffs32() and ffs64() functions find the first bit set in n and return the index of that bit. Conversely, the fls32() and fls64() func- tions find the last bit set in n, returning the index of the bit. The search always starts from the bit 1 (the least significant bit). If the argument n is zero, each function returns zero. IMPLEMENTATION NOTES
The described functions are implemented as static inline functions in the <sys/bitops.h> header. The standard C library includes a more por- table ffs(3) for user applications. EXAMPLES
In the following example f = 3 and l = 7: uint32_t n = 0x44; /* 01000100 */ int f, l; f = ffs32(n); l = fls32(n); SEE ALSO
bitops(3), bits(3), bitstring(3), ffs(3), setbit(9) HISTORY
These functions first appeared in NetBSD 5.0. BSD
April 8, 2011 BSD