### <stddef.h>

The <stddef.h> include file defines the commonly used pointers, variables, and types, from typedef statements, as listed below:

ptrdiff_t | typedef for the type of the difference of two pointers
size_t | typedef for the type of the value returned by sizeof
wchar_t | typedef for a wide character constant.

<stddef.h> also defines the macros NULL and offsetof. NULL is a pointer that is guaranteed not to point to a data object. The offsetof macro expands to the number of bytes between a structure member and the start of the structure. The offsetof macro has the form:

> `offsetof(structure_type, member)`

On OS/2 and Windows, in extended mode, <stddef.h> also contains definitions of the global variables errno and _threadid. errno is also defined in <stdlib.h> for extended mode, and in <errno.h> in ANSI mode.