ffs(3)

ffs3

Find first or last bit set in a bit string

Usage

#include <strings.h>

int

ffs(int value);

int

ffsl(long value);

int

ffsll(long long value);

int

fls(int value);

int

flsl(long value);

int

flsll(long long value);

Library

Standard C Library (libc, -lc)

Overview

The ffs(), ffsl() and ffsll() functions find the first (least significant) bit set in value and return the index of that bit.

The fls(), flsl() and flsll() functions find the last (most significant) bit set in value and return the index of that bit.

Bits are numbered starting at 1, the least significant bit. A return value of zero from any of these functions means that the argument was zero.

Releases

144 releases since Mac OS X 10.0; the text changed 6 times.

  1. 10.0–10.1.5
  2. 10.2–10.2.8
  3. 10.3–10.3.9
  4. 10.4–10.4.11
  5. 10.5–10.6.8
  6. 10.7–10.8.5
  7. 10.12–26.5

History

The ffs() function appeared in 4.3BSD. Its prototype existed previously in ⟨string.h⟩ before it was moved to ⟨strings.h⟩ for IEEE Std 1003.1-2001 (“POSIX.1”) compliance.

The ffsl(), fls() and flsl() functions appeared in FreeBSD 5.3. The ffsll() and flsll() functions appeared in FreeBSD 7.1.

From libplatform 375.120.2 in macOS 26.5. Parsed by carta from the page's mdoc source.