.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved 
.TH "<stddef.h>" P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual"
.\" <stddef.h> 
.SH NAME
stddef.h \- standard type definitions
.SH SYNOPSIS
.LP
\fB#include <stddef.h>\fP
.SH DESCRIPTION
.LP
The \fI<stddef.h>\fP header shall define the following macros:
.TP 7
NULL
Null pointer constant.
.TP 7
offsetof(\fItype\fP, \fImember-designator\fP)
.sp
Integer constant expression of type \fBsize_t\fP, the value of which
is the offset in bytes to the structure member
(\fImember-designator\fP), from the beginning of its structure (\fItype\fP).
.sp
.LP
The \fI<stddef.h>\fP header shall define the following types:
.TP 7
\fBptrdiff_t\fP
Signed integer type of the result of subtracting two pointers.
.TP 7
\fBwchar_t\fP
Integer type whose range of values can represent distinct wide-character
codes for all members of the largest character set
specified among the locales supported by the compilation environment:
the null character has the code value 0 and each member of
the portable character set has a code value equal to its value when
used as the lone character in an integer character
constant.
.TP 7
\fBsize_t\fP
Unsigned integer type of the result of the \fIsizeof\fP operator.
.sp
.LP
The implementation shall support one or more programming environments
in which the widths of \fBptrdiff_t\fP, \fBsize_t\fP,
and \fBwchar_t\fP are no greater than the width of type \fBlong\fP.
The names of these programming environments can be obtained
using the \fIconfstr\fP() function or the \fIgetconf\fP utility.
.LP
\fIThe following sections are informative.\fP
.SH APPLICATION USAGE
.LP
None.
.SH RATIONALE
.LP
None.
.SH FUTURE DIRECTIONS
.LP
None.
.SH SEE ALSO
.LP
\fI<wchar.h>\fP , \fI<sys/types.h>\fP , the System
Interfaces volume of IEEE\ Std\ 1003.1-2001, \fIconfstr\fP(), the
Shell and
Utilities volume of IEEE\ Std\ 1003.1-2001, \fIgetconf\fP
.SH COPYRIGHT
Portions of this text are reprinted and reproduced in electronic form
from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
-- Portable Operating System Interface (POSIX), The Open Group Base
Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of
Electrical and Electronics Engineers, Inc and The Open Group. In the
event of any discrepancy between this version and the original IEEE and
The Open Group Standard, the original IEEE and The Open Group Standard
is the referee document. The original Standard can be obtained online at
http://www.opengroup.org/unix/online.html .
