Для совместимости со стандартной библиотекой C стандартная библиотека C ++ предоставляет, как C headers показано в таблице 141.
<assert.h> | <inttypes.h> | <signal.h> | <stdio.h> | <wchar.h> |
<complex.h> | <iso646.h> | <stdalign.h> | <stdlib.h> | <wctype.h> |
<ctype.h> | <limits.h> | <stdarg.h> | <string.h> | |
<errno.h> | <locale.h> | <stdbool.h> | <tgmath.h> | |
<fenv.h> | <math.h> | <stddef.h> | <time.h> | |
<float.h> | <setjmp.h> | <stdint.h> | <uchar.h> |
Заголовок <complex.h> ведет себя так, как будто он просто включает заголовок <ccomplex>. Заголовок <tgmath.h> ведет себя так, как будто он просто включает заголовок <ctgmath>.
Каждый другой заголовок C, каждый из которых имеет имя формы name.h, ведет себя так, как если бы каждое имя, помещенное в пространство имен стандартной библиотеки соответствующим cname заголовком, помещалось в область глобального пространства имен, за исключением функций, описанных в [sf.cmath]объявлении std::byte ([cstddef.syn]) , а также функции и шаблоны функций, описанные в [support.types.byteops]. Не указано, были ли эти имена сначала объявлены или определены в области видимости пространства имен ([basic.scope.namespace]) пространства имен, std а затем явно введены в глобальную область пространства имен using-declarations.
[ Example: Заголовок, несомненно, предоставляет свои объявления и определения в пространстве имен . Он также может предоставлять эти имена в глобальном пространстве имен. Заголовок, несомненно, предоставляет те же объявления и определения в глобальном пространстве имен, как и в стандарте C. Он также может предоставлять эти имена в пространстве имен . ]<cstdlib> std<stdlib.h> std — end example