The
following header files have been created to provide access to standard C library
functions in accordance with the C++ Standard. Each of the following header
files provides access to the standard C functions, macros, and types defined
by the C Standard for the corresponding C header:
In general, <cNAME> contains
items corresponding to the <NAME.h> header.
For example, <cstdio> declares the items
from the C header <stdio.h>. However, the
function and type names for these headers are placed in the std namespace.
As an extension, the header files
<climits> and <cstdlib> include the long long support items declared in the corresponding C headers.
These declarations may be hidden by defining the macro _SASC_HIDE_LLLIB. Other nonstandard items, such as those required for POSIX
support, are not declared in these headers.
The standard C headers have also been updated to comply
with the C++ Standard. Each header <NAME.h>
declares the items from the header. Then each function and type name declared
in the std namespace is also declared in the
global scope via a using declaration. Nonstandard
items normally declared for C are also declared for C++, but only in the global
scope.
Note:
The C++ Standard changes the return type of strchr(), strrchr(),
memchr(), and strstr() to a const pointer when the first argument is a const
pointer. This can cause errors like LSCT544 with existing
code. The errors can be fixed by updating the use of the return value to expect
the appropriate type. ![[cautionend]](../common/images/cautend.gif)
Copyright © 2001
by SAS Institute Inc., Cary, NC, USA. All rights reserved.