PDCLIB(3) Library Functions Manual PDCLIB(3)


PDCLibPublic domain, portable C library


library “pdclib”


#include <assert.h>
#include <ctype.h>
#include <errno.h>
#include <inttypes.h>
#include <iso646.h>
#include <limits.h>
#include <locale.h>
#include <signal.h>
#include <stdarg.h>
#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <stdnoreturn.h>
#include <string.h>
#include <threads.h>
#include <time.h>
#include <wchar.h>


The PDCLib library is a portable, public domain C library. It aims at full conformance with ISO C89, C95, C99 and C11 when used in combination with a conformant compiler. In addition, it aims at conformance with the portion of ISO C++97 and C++2011 which is derived from said standards.

PDCLib aims for strict conformance with the selected C/C++ standard. Therefore, unlike most C libraries, it does not by default expose any extensions. Some extensions (from POSIX or the Single Unix Specification) can be selected by defining the appropriate feature selection macro, such as _POSIX_C_SOURCE or _XOPEN_SOURCE to the appropriate value. For example, in the following definition:

#define _XOPEN_SOURCE || _POSIX_C_SOURCE >= 200809L
#include <string.h>
char * strdup(const char *)
it is documented that defining either _XOPEN_SOURCE or _POSIX_C_SOURCE to have a value greater than 200809L before the first inclusion of <string.h> will expose a definition of the function strdup()


cc(1), c++(7)


When compiled with a C compiler, conformant with ISO/IEC 9899:1990 (“ISO C90”), ISO/IEC 9899/AMD1:1995 (“ISO C90, Amendment 1”), ISO/IEC 9899/TCOR1:1994 (“ISO C90, Technical Corrigendum 1”), ISO/IEC 9899/TCOR2:1995 (“ISO C90, Technical Corrigendum 2”), ISO/IEC 9899:1999 (“ISO C99”) or ISO/IEC 9899:2011 (“ISO C11”) as dependent upon the version of C the compiler declares conformance with.

When compiled with a C++ compiler, conformant with ISO/IEC 14882:1997 or ISO/IEC 14882:2011 "The C++ Programming Language" as dependent upon the version of C++ the compiler declares conformance with.


The PDCLib library is maintained by by Owen Shepherd, [email protected]. Based upon work by Martin Solar Baute, [email protected].
February 20, 2013 Fusion