FFS(3) Linux Programmer's Manual FFS(3) NAME ffs, ffsl, ffsll - find first bit set in a word SYNOPSIS #include int ffs(int i); #include int ffsl(long int i); int ffsll(long long int i); Feature Test Macro Requirements for glibc (see feature_test_macros(7)): ffs(): Since glibc 2.12: _XOPEN_SOURCE >= 700 || ! (_POSIX_C_SOURCE >= 200809L) || /* Glibc since 2.19: */ _DEFAULT_SOURCE || /* Glibc versions <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE Before glibc 2.12: none ffsl(), ffsll(): Since glibc 2.27: _DEFAULT_SOURCE Before glibc 2.27: _GNU_SOURCE DESCRIPTION The ffs() function returns the position of the first (least signifi- cant) bit set in the word i. The least significant bit is position 1 and the most significant position is, for example, 32 or 64. The func- tions ffsll() and ffsl() do the same but take arguments of possibly different size. RETURN VALUE These functions return the position of the first bit set, or 0 if no bits are set in i. ATTRIBUTES For an explanation of the terms used in this section, see attributes(7). allbox; lbw22 lb lb l l l. Interface Attribute Value T{ ffs(), ffsl(), ffsll() T} Thread safety MT-Safe CONFORMING TO ffs(): POSIX.1-2001, POSIX.1-2008, 4.3BSD. The ffsl() and ffsll() functions are glibc extensions. NOTES BSD systems have a prototype in . SEE ALSO memchr(3) COLOPHON This page is part of release 4.16 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https://www.kernel.org/doc/man-pages/. GNU 2017-09-15 FFS(3)