Despite the enormous popularity of the C programming language, its great flexibility and its wide spread use, the brittleness of C has caused many programmers and users of C software a hard time.
A great deal of the problems with C is related to the fact that there are many
situations in which the behavior of C programmed software is undefined.
And so, the systems build with in become unpredictable, and often unsafe. The ISO/IEC 9899:1990 Technical Corrigendum 2 defines about 200 feature s of the C programming language that relate to unspecified, undefined or implement ation define behavior.
Less Hatton explains that a number of these problems can be avoided by using so-called wrappers for dangerous C library functions. The C Library Wrapper implemen ts the wrappers for all the C library functions described by Kerninghan and Ritchie. The library provides required precautions to prevent the software from undefined behavior by adding extra error checking mechanisms to the c library functions and by providing an exception handling mechanism.
This document describes how to use this C Library Wrapper.
Erwin Nijmeijer 2002