| FFS32(3) | 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() functions 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 portable 
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);
 
HISTORY
 These functions first appeared in NetBSD 5.0.