STDDEF(3) | Library Functions Manual | STDDEF(3)

# NAME

stddef — standard type definitions

# SYNOPSIS

#include <stddef.h>

# DESCRIPTION

The <stddef.h> header defines the following types and macros:

1. ptrdiff_t, a signed integer type of the result of subtracting two pointers;
2. size_t, an unsigned integer type of the result of the sizeof() operator;
3. wchar_t, an integer type whose range of values can represent distinct wide-character codes for all members of the largest character set specified among the supported locales: the null character has the code value 0 and each member of the character set has a code value equal to its value when used as the lone character in an integer character constant;
4. NULL, which expands to an implementation-defined null pointer constant; and
5. offsetof(), a macro that expands to an integer constant as described in offsetof(3).

Some of the described types and macros may appear also in other headers.

# SEE ALSO

offsetof(3), stdlib(3), unistd(3)

# STANDARDS

As described here, the <stddef.h> header conforms to ISO/IEC 9899:1999 (“ISO C99”) and IEEE Std 1003.1-2001 (“POSIX.1”). Some of the types and macros conform to earlier standards such as ANSI X3.159-1989 (“ANSI C89”).

# HISTORY

In the current form the <stddef.h> header was introduced in NetBSD 0.8, the first official release of NetBSD. Some definitions such as NULL were first introduced already in the <nsys/param.h> header of Version 4 AT&T UNIX.

April 10, 2011 | NetBSD 7.2