SETBIT(9) | 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

bitmap(3), 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.

December 4, 2012 | NetBSD 9.2