NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUE | STANDARDS | CAVEATS | SEE ALSO | COLOPHON |
|
|
powerof2(3) Library Functions Manual powerof2(3)
powerof2 - test if a value is a power of 2
Standard C library (libc)
#include <sys/param.h> int powerof2(x);
This macro returns true if x is a power of 2, and false otherwise. 0 is considered a power of 2. This can make sense considering wrapping of unsigned integers, and has interesting properties.
True or false, if x is a power of 2 or not, respectively.
BSD.
The arguments may be evaluated more than once. Because this macro is implemented using bitwise operations, some negative values can invoke undefined behavior. For example, the following invokes undefined behavior: powerof2(INT_MIN);. Call it only with unsigned types to be safe.
stdc_bit_ceil(3), stdc_bit_floor(3)
This page is part of the man-pages (Linux kernel and C library
user-space interface documentation) project. Information about
the project can be found at
⟨https://www.kernel.org/doc/man-pages/⟩. If you have a bug report
for this manual page, see
⟨https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/CONTRIBUTING⟩.
This page was obtained from the tarball man-pages-6.9.1.tar.gz
fetched from
⟨https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/⟩ on
2024-06-26. If you discover any rendering problems in this HTML
version of the page, or you believe there is a better or more up-
to-date source for the page, or you have corrections or
improvements to the information in this COLOPHON (which is not
part of the original manual page), send a mail to
[email protected]
Linux man-pages 6.9.1 2024-05-02 powerof2(3)