| OFFSETOF(3) | Library Functions Manual | OFFSETOF(3) | 
offsetof —
#include <stddef.h>
size_t
  
  offsetof(type,
    member);
offsetof() macro expands to an integer constant
  expression of type size_t and yields the offset, in
  bytes, of the field member from the start of the
  structure type.
A compiler error will result if member is not aligned to a byte boundary (i.e. it is a bit-field).
struct example {
	double	x;
	int	y;
	char	z;
};
size_t x, y, z;
x = offsetof(struct example, x);
y = offsetof(struct example, y);
z = offsetof(struct example, z);
(void)printf("%zu %zu %zu\n", x, y, z);
offsetof() macro conforms to ANSI
  X3.159-1989 (“ANSI C89”).
| April 1, 2011 | NetBSD 9.3 |