Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курс ПЯВУ 2 сем / Лекции 2 сем / Л№36.Библиотека стандартных программ / Лекция № 33. Библиотека стандартые функции.odt
Скачиваний:
15
Добавлен:
17.04.2015
Размер:
54.36 Кб
Скачать

14. Управление процессами

Функции этой группы позволяют приложению выполнять дочерние процессы, программно выполнять команды операционной системы, а также вырабатывать код завершения. Прототипы функций управления процессами объявлены в файле process.h. Основные функции описаны в табл. 18.

Таблица 18. Функции для управления процессами

________________________________________________________________________________

Функция Краткое описание

________________________________________________________________________________

abort void abort(void); прерывает текущий процесс (прототип содержится также в

stdlib.h)

exit void exit(int status); завершает процесс с кодом errorlevel=status (прототип

есть также в stdlib.h)

execl int execl(char *path, char *arg0, *arg1, ..., *argn, NULL); позволяет выполнить

порождаемый процесс со списком аргументов. Существуют разновидности

функции для передачи процессу параметров командной строки,

использования PATH, системного окружения и т. п.

spawnl int spawnl(int mode, char *path, char *arg0, arg1, ..., argn, NULL); позволяет

выполнить порождаемый процесс со списком аргументов. Величина mode

определяет режим запуска дочернего процесса

system int system(const char *command); выполнение команды ОС

________________________________________________________________________________

15. Поиск и сортировка

Си содержит ряд стандартных функций, позволяющих упростить задачи сортировки и поиска данных. Их прототипы описаны в библиотеке stdlib.h. Библиотечные функции, предназначенные для поиска и сортировки в массиве, перечислены в табл..19.

Таблица 19. Функции поиска и сортировки

________________________________________________________________________________

Функция Краткое описание

________________________________________________________________________________

bsearch Выполняет бинарный поиск в массиве

lfind выполняет линейный поиск для заданного значения

lsearch выполняет линейный поиск для заданного значения, которое

добавляется в массив, если не найдено

qsort выполняет быструю сортировку

_______________________________________________________________________________

16. Функции для работы с датой и временем

Прототипы этой группы функций описаны в библиотеках dos.h и time.h. Функции описаны в табл. 20.

Таблица 20.. Функции для работы с датой и временем

_______________________________________________________________________________

Функция Краткое описание

_______________________________________________________________________________

getdate void getdate(struct date *datep); получает системную дату как структуру

типа date со следующими полями:

struct date{

int da_year; //год

char da_day; //день месяца

char da_mon; //месяц (1= январь)

};

gettime void gettime(struct time *timep); получает системное время как структуру

типа time со следующими полями:

struct time {

unsigned char ti_min; //минуты

unsigned char ti_hour; //часы

unsigned char ti_hund;

//сотые доли секунды

unsigned char ti_sec; //секунды

};

setdate void setdate(struct date *datep); устанавливает системную дату

settime void settime(struct time *timep); устанавливает системное время

time long time(long *timer); получает системное время в "тиках" - секундах с

начала "эры Unix" 1 января 1970 г. в полночь по Гринвичу

RTFM::Книги->C++->Справочник С/C++ - Список функций..

rtfm.4hack.com›books.php…

Библиотечные функции.

Примечание: Все примеры программ из этой главы содержатся во встроенной справочной системе. Это означает, что вы можете просто скопировать их из нее и вставить в свой файл.

Здесьсодержитсяподробное описание всех библиотечных функций Borland C++. Некоторые функции группируются в "семейства" (например, функции exec... и spawn..., которые создают, загружают и запускают программы), т.к. они выполняют

похожие или взаимозависимые действия. Мы же для каждой функции приводим отдельное описание. На пример, если вы хотите получить информацию о функции free, вы будете искать именно free и в описании функции вы найдете следующую информацию:

- описание того, что делает функция free,

- синтаксис для вызова функции free,

- в каких включаемых файлах содержится прототип функции free,

- детальное описание того, как работает free и как она взаимосвязана с другими функциями, предназначенными для выделения памяти,

- список других компиляторов, которые имеют сходную функцию,

- ссылки на взаимосвязанные функции Borland C++,

- и, если необходимо, приводится пример использования этой функции или ссылка на функцию, в описании которой приводится необходимый пример.

В нижеприведенном примере показано, как выглядит примерное описание одной библиотечной функции.

Описание библиотечных функций.

----------------------------------------------------------------------------------------------------------

Функция Краткое описание того, что делает эта функция.

----------------------------------------------------------------------------------------------------------

Синтаксис #include <header.h>

(Файлы заголовков, содержащие прототип для функции

или определения констант, перечисляемых типов и

т.д., используемые функцией).

function(modifier parameter[,...]);

(Это описание синтаксиса для функции; [,...]

означает, что могут присутствовать другие

параметры и их модификаторы).

Файл, содержащий header.h

прототип

Файлы заголовков, содержащие прототип для функции.

Прототип некоторых функций содержится в нескольких

файлах заголовков; в этом случае перечисляются все

файлы. Вы можете использовать более подходящий вам

файл.

Описание Здесь описывается, что делает функция, параметры,

которые она использует, некоторые подробности,

которые могут вас заинтересовать, а также

перечислены родственные функции.

Возвращаемое Приводится значение, которое функция

значение возвратит, если оно существует. Если используется

глобальная переменная errno, то приводится также ее

значение. (Описание значений переменной errno вы

найдете в документации по DOS.)

Переносимость Определяет системы и языки, в которых доступна

функция. Это может быть UNIX, IBM PC и совместимые

компьютеры, C++, Windows а также стандарт ANSI С.

Смотрите также Перечисляются другие функции, которые вас

могут заинтересовать. Если имя функции содержит

перечисление (funcname..., ...funcname,

func...name), то это значит, что имеет место

семейство функций (например, exec... ссылается на

целое семейство функций: execl, execle, execlpe,

execv, execve, execvp и execvpe).

Пример /* Здесь вы найдете пример маленькой программы,

которая иллюстрирует использование этой (и,

возможно, связанных с ней) функции. */

Перечень стандартных функций.

[abort] [abs] [access] [acos] [alloca] [asctime] [asin] [assert] [atof-atol]

[bdos] [bessel] [bsearch]

[cabs] [calloc] [ceil] [cgets] [chdir] [chmod] [chsize] [clearerr] [cos-cosh] [cprintf] [cputs] [creat] [cscanf] [ctime]

[diieeetomsbin-dmsbintoieee] [difftime] [dosexterr]

[ecvt] [eof] [execl - execvpe] [exp]

[fabs] [fclose-fcloseall] [fcvt] [fdopen] [feof] [ferror] [fflush] [fgetc-fgetchar] [fgets] [fieeetomsbin-fmsbintoieee] [filelength] [fileno] [floor] [flushall] [fmod] [fopen] [fprintf] [fputs] [fread] [free] [freopen] [frexp] [fstat] [ftell] [ftime] [fwrite]

[gcvt] [getc - getchar] [getch] [getche] [getcwd] [getpid] [gets] [getw] [gmtime]

[halloc] [hfree] [hypot]

[inp] [intdos] [intdosx] [isalnum-isascii] [isatty] [iscntrl-isxdigit] [itoa]

[kbhit]

[labs] [ldexp] [lfind - lsearch] [localtime] [locking] [lseek] [ltoa]

[malloc] [matherr] [memccpy] [memchr] [memcmp] [memcpy] [memicmp] [memset] [mkdir] [mktemp] [modf] [movedata]

[onexit] [open] [outp]

[perror] [pow] [printf] [putenv] [puts] [putw]

[qsort]

[rand] [read] [realloc] [remove] [rename] [rewind] [rmdir] [rmtmp]

[sbrk] [scanf] [segread] [setjmp] [setmode] [setvbuf] [signal] [sin-sinh] [sopen] [spawnl-spawnvpe] [sprintf] [sqrt] [srand] [sscanf] [stackavail] [stat] [strcat-strdup] [strerror] [strlen] [strlwr] [strncat-strnset] [strpbrk] [strrchr] [strrev] [strset] [strspn] [strstr] [strtod-strtol] [strtok] [strupr] [swab] [system]

[tempnam - tmpnam]

[null]

[tell] [time] [tmpfile] [tzset]

[ultoa] [umask] [ungetc] [unlink] [utime]

[vfprintf - vsprintf]

[write]

Сортировка по модулям.

alloc.h

[brk] [calloc] [coreleft] [farcalloc] [farcoreleft] [farfree] [farheapcheck] [farheapcheckfree] [farheapchecknode] [farheapfillfree] [farheapwalk] [farmalloc] [farrealloc] [heapcheck] [heapcheckfree] [heapchecknode] [heapfillfree] [heapwalk] [sbrk] [free] [malloc] [realloc]

assert.h

[assert]

bcd.h

[bcd]

bios.h

[bioscom] [biosdisk] [biosequip] [bioskey] [biosmemory] [biosprint] [biostime]

complex.h

[real] [abs] [acos] [arg] [asin] [atan] [complex] [conj] [cos] [cosh] [exp] [imag] [log] [log10] [norm] [polar] [pow]

conio.h

[_setcursortype] [cgets] [clreol] [clrscr] [cprintf] [cputs] [cscanf] [delline] [getch] [getche] [getpass] [gettext] [gettextinfo] [gotoxy] [highvideo] [insline] [kbhit] [lowvideo] [movetext] [normvideo] [putch] [puttext]

ctype.h

[isalnum] [isalpha] [isascii] [iscntrl] [isdigit] [isgraph] [islower] [isprint] [ispunct] [isspace] [isupper] [isxdigit]

dir.h

[chdir] [findfirst] [findnext] [fnmerge] [fnsplit] [getcurdir] [getcwd] [getdisk] [mkdir] [mktemp] [rmdir] [searchpath] [setdisk]

dos.h

[FP_OFF] [FP_SEG] [MK_FP] [_OvrlInitEms] [_OvrlInitExt] [__emit__] [absread] [abswrite] [allocmem] [bdos] [bdosptr] [country] [ctrlbrk] [delay] [disable] [dosexterr] [dostounix] [enable] [freemem] [geninterrupt] [getcbrk] [getdate] [getdfree] [getdta] [getfat] [getfatd] [getpsp] [gettime] [getvect] [getverify] [harderr] [hardresume] [hardretn] [inport] [inportb] [int86] [int86x] [intdos] [intdosx] [intr] [keep] [nosound] [outport] [outportb] [parsfnm] [peek] [peekb] [poke] [pokeb] [randbrd] [randbwr] [segread] [setblock] [setcbrk] [setdate] [setdta] [settime] [setvect]

float.h

[_clear87] [_control87] [_fpreset]

graphics.h

[_graphfreemem] [_graphgetmem] [arc] [bar] [bar3d] [circle] [cleardevice] [clearviewport] [closegraph] [detectgraph] [drawpoly] [ellipse] [fillellipse] [fillpoly] [floodfill] [getarccoords] [getaspectratio] [getbkcolor] [getcolor] [getdefaultplatte] [getdrivername] [getfillpattern] [getfillsettings] [getgraphmode] [getimage] [getlinesttings] [getmaxcolor] [getmaxmode] [getmaxx] [getmaxy] [getmodename] [getmoderange] [getpalette] [getpalettesize] [getpixel] [gettextsettings] [getviewsettings] [getx] [gety] [graphdefaults] [grapherrormsg] [graphresult] [imagesise] [initgraph] [installuserdriver] [installuserfont] [line] [linerel] [lineto] [moverel] [moveto] [outtext] [outtextxy] [pieslice] [putimage] [putpixel] [rectangle] [registerbgidriver] [registerbgifont] [restorecrtmode] [sector] [setactivepage] [setallpalette] [setaspectratio] [setbkcolor] [setcolor] [setfillpattern] [setfillstyle] [setgraphbufsize] [setgraphmode] [setlinestyle] [setpalette] [setrgbpalette] [settextjustify] [settextstyle] [setusercharsize]

io.h

[_chmod] [_close] [_creat] [_open] [_read] [access] [chmod] [chsize] [close] [creat] [creatnew] [creattemp] [dup] [dup2] [eof] [filelength] [getftime] [ioctl] [isatty] [lock] [lseek] [open] [read] [setftime] [setmode] locale.h

[localeconv] [setlocale]

math.h

[abs] [acos] [asin] [atan] [atan2] [atof] [cabs] [ceil] [cos] [cosh] [exp] [fabs] [floor] [fmod] [frexp] [hypot] [labs] [ldexp] [log] [log10] [matherr] [modf] [poly] [pow] [pow10]

mem.h

[_fmemccopy] [_fmemchr] [_fmemcmp] [_fmemcopy] [_fmemicmp] [_fmemset] [memccpy, _fmemccpy] [memchr,_fmemchr] [memcmp, _fmemcmp] [memcpy, _fmemcpy] [memicmp] [memmove] [memset, _fmemset] [memset, _fmemset] [movedata] [movmem] [setmem]

process.h

[_exit] [abort] [execl] [execle] [execlp] [execv] [execve] [execvp] [execvpe] [exit] [getpid]

setjmp.h

[ongjmp] [etjmp]

signal.h

[raise]

stdio.h

[clearerr] [fclose] [fcloseall] [fdopen] [feof] [ferror] [fflush] [fgetc] [fgetchar] [fgetpos] [fgets] [fileno] [flushall] [fopen] [fprintf] [fputc] [fputchar] [fputs] [fread] [freopen] [fscanf] [fseek] [fsetpos] [ftell] [fwrite] [getc] [getchar] [gets] [getw] [perror] [printf] [putc] [putchar] [puts] [putw] [remove] [rename] [rewind] [scanf] [setbuf] [setvbuf]

stdlib.h

[_exit] [_lrotl] [_lrotr] [_rotl] [_rotr] [abort] [atexit] [atof] [atoi] [atol] [bsearch] [calloc] [div] [ecvt] [exit] [fcvt] [gcvt] [getenv] [itoa] [labs] [ldiv] [lfind] [lsearch] [ltoa] [max] [min] [putenv] [qsort] [rand] [random] [randomize] [free] [malloc] [realloc]

string.h

[_fstrcat] [_fstrchr] [_fstrcspn] [_fstrdup] [_fstricmp] [_fstrlen] [_fstrlwr] [_fstrncat] [_fstrncmp] [_fstrncmp] [_fstrnicmp] [_fstrnset] [_fstrpbrk] [_fstrrchr] [_fstrrev] [_fstrset] [_fstrspn] [_fstrstr] [_fstrtok] [_fstrupr] [memcmp, _fmemcmp] [memcpy, _fmemcpy] [memicmp] [memmove] [memset, _fmemset] [movedata]

sys\stat.h

[fstat]

sys\timeb.h

[ftime]

time.h

[asctime] [clock] [ctime] [diftime] [gmtime] [localtime] [mktime]

Сортировка по имени.

A

[abort] [abs] [absread] [abswrite] [access] [acos] [allocmem] [arc] [arg] [asctime] [asin] [assert] [atan] [atan2] [atexit] [atof] [atoi] [atol]

B

[bar] [bar3d] [bcd] [bdos] [bdosptr] [bioscom] [biosdisk] [biosequip] [bioskey] [biosmemory] [biosprint] [biostime] [brk] [bsearch]

C

[cabs] [calloc] [ceil] [cgets] [chdir] [_chmod] [chmod] [chsize] [circle] [_clear87] [cleardevice] [clearerr] [clearviewport] [clock] [_close] [close] [closegraph] [clreol] [clrscr] [complex] [conj] [_control87] [coreleft] [cos] [cosh] [country] [cprintf] [cputs] [_creat] [creat] [creatnew] [creattemp] [cscanf] [ctime] [ctrlbrk]

D

[delay] [delline] [detectgraph] [diftime] [disable] [div] [dosexterr] [dostounix] [drawpoly] [dup] [dup2]

E

[ecvt] [ellipse] [__emit__] [enable] [eof] [execl] [execle] [execlp] [execv] [execve] [execvp] [execvpe] [_exit] [exit] [exp] F

[fabs] [farcalloc] [farcoreleft] [farfree] [farheapcheck] [farheapcheckfree] [farheapchecknode] [farheapfillfree] [farheapwalk] [farmalloc] [farrealloc] [fclose] [fcloseall] [fcvt] [fdopen] [feof] [ferror] [fflush] [fgetc] [fgetchar] [fgetpos] [fgets] [filelength] [fileno] [fillellipse] [fillpoly] [findfirst] [findnext] [floodfill] [floor] [flushall] [_fmemccopy] [_fmemchr] [_fmemcmp] [_fmemcopy] [_fmemicmp] [_fmemset] [fmod] [fnmerge] [fnsplit] [fopen] [FP_OFF] [_fpreset] [fprintf] [FP_SEG] [fputc] [fputchar] [fputs] [fread] [free] [freemem] [freopen] [frexp] [fscanf] [fseek] [fsetpos] [fstat] [_fstrcat] [_fstrchr] [_fstrcspn] [_fstrdup] [_fstricmp] [_fstrlen] [_fstrlwr] [_fstrncat] [_fstrncmp] [_fstrncmp] [_fstrnicmp] [_fstrnset] [_fstrpbrk] [_fstrrchr] [_fstrrev] [_fstrset] [_fstrspn] [_fstrstr] [_fstrtok] [_fstrupr] [ftell] [ftime] [fwrite]

G

[gcvt] [geninterrupt] [getarccoords] [getaspectratio] [getbkcolor] [getc] [getcbrk] [getch] [getchar] [getche] [getcolor] [getcurdir] [getcwd] [getdate] [getdefaultplatte] [getdfree] [getdisk] [getdrivername] [getdta] [getenv] [getfat] [getfatd] [getfillpattern] [getfillsettings] [getftime] [getgraphmode] [getimage] [getlinesttings] [getmaxcolor] [getmaxmode] [getmaxx] [getmaxy] [getmodename] [getmoderange] [getpalette] [getpalettesize] [getpass] [getpid] [getpixel] [getpsp] [gets] [gettext] [gettextinfo] [gettextsettings] [gettime] [getvect] [getverify] [getviewsettings] [getw] [getx] [gety] [gmtime] [gotoxy] [graphdefaults] [grapherrormsg] [_graphfreemem] [_graphgetmem] [graphresult]

H

[harderr] [hardresume] [hardretn] [heapcheck] [heapcheckfree] [heapchecknode] [heapfillfree] [heapwalk] [highvideo] [hypot] I

[imag] [imagesise] [initgraph] [inport] [inportb] [insline] [installuserdriver] [installuserfont] [int86] [int86x] [intdos] [intdosx] [intr] [ioctl] [isalnum] [isalpha] [isascii] [isatty] [iscntrl] [isdigit] [isgraph] [islower] [isprint] [ispunct] [isspace] [isupper] [isxdigit] [itoa]

K

[kbhit] [keep]

L

[labs] [ldexp] [ldiv] [lfind] [line] [linerel] [lineto] [localeconv] [localtime] [lock] [log] [log10] [longjmp] [lowvideo] [_lrotl] [_lrotr] [lsearch] [lseek] [ltoa]

M

[malloc] [matherr] [max] [memccpy, _fmemccpy] [memchr,_fmemchr] [memcmp, _fmemcmp] [memcpy, _fmemcpy] [memicmp] [memmove] [memset, _fmemset] [min] [mkdir] [MK_FP] [mktemp] [mktime] [modf] [movedata] [moverel] [movetext] [moveto] [movmem]

N

[norm] [normvideo] [nosound]

O

[_open] [open] [outport] [outportb] [outtext] [outtextxy] [_OvrlInitEms] [_OvrlInitExt]

Р

[parsfnm] [peek] [peekb] [perror] [pieslice] [poke] [pokeb] [polar] [poly] [pow] [pow10] [printf] [putc] [putch] [putchar] [putenv] [putimage] [putpixel] [puts] [puttext] [putw]

Q

[qsort]

R

[raise] [rand] [randbrd] [randbwr] [random] [randomize] [_read] [read] [real] [realloc] [rectangle] [registerbgidriver] [registerbgifont] [remove] [rename] [restorecrtmode] [rewind] [rmdir] [_rotl] [_rotr]

S

[sbrk] [scanf] [searchpath] [sector] [segread] [setactivepage] [setallpalette] [setaspectratio] [setbkcolor] [setblock] [setbuf] [setcbrk] [setcolor] [_setcursortype] [setdate] [setdisk] [setdta] [setfillpattern] [setfillstyle] [setftime] [setgraphbufsize] [setgraphmode] [setjmp] [setlinestyle] [setlocale] [setmem] [setmode] [setpalette] [setrgbpalette] [settextjustify] [settextstyle] [settime] [setusercharsize] [setvbuf] [setvect]

Пример описания функции.

acos

Функция Вычисляет арккосинус.

Синтаксис Версия для вещественных Версия для комплексных

#include <math.h> #include<complex.h>

double acos(double x); complex acos(complex x);

Файл, содержащий Версия для вещественных Версия для комплексных

прототип math.h complex.h

Описание acos возвращает арккосинус введенного значения.

Аргументы acos должны быть в диапазоне от -1 до 1.

Аргументы, выходящие за пределы этого диапазона,

вынуждают acos вернуть NAN и установить errno в:

EDOM - Ошибка области определения

Комплексный обратный косинус определяется следующим

образом:

acos(z)=-i*log(z+i*sqrt(1-z^2))

Возвращаемое Вещественная версия acos возвращает значение в диа-

значение пазоне от 0 до pi.

Управление ошибками для этой функции можно изменить

с помощью функции matherr.

Переносимость Вещественная версия acos поддерживается в системах

UNIX и определена в ANSI C. Комплексная версия acos

требует С++ и скорее всего непереносима.

Смотрите также asin,atan,atan2,complex,cos,matherr,sin,tan

Пример:

#include<stdio.h>

#include<math.h>

int main(void)

{

double result;

double x=0.5;

result = acos(x);

printf("Арккосинус от %1f равен %1f\n",x,result);

return 0;

}

Заголовочные файлы

стандартной библиотеки

Ввод/вывод

<cstdio> Функции ввода/вывода в стиле С

<cstcnib> Функции для работы с символами

<cwchar> Функции ввода/вывода в стиле С для многобайтных символов

<fstream> Файловые потоки

<iomanip> Манипуляторы

<ios> Базовые классы потоков ввода/вывода

<iosfwcl> Предварительные объявления средств ввода/вывода

<iostream> Стандартные объекты и операции с потоками ввода/вывода

<istreanp> Входные потоки

<ostreanp' Выходные потоки

<sstream> Строковые потоки

<streambuf> Буферизация потоков

________________________________________________________________________________

Строки

<cctype> Функции классификации символов

<cwctype>

<cwtype>

<cstring> Функции для работы со строками в стиле С

<cstcnib> Функции для работы с символами

<string> Строковый класс

Контейнерные классы

<b1tset> Битовое множество

<deque> Двусторонняя очередь

<list> Двусвязный список

<map>С Словарь, словарь с дубликатами

<queue> Очередь, очередь с приоритетами

<set> Множество, множество с дубликатами

<stack> Стек

<vector> Одномерный массив |

Алгоритмы, итераторы, утилиты

1 <algor1thni> Алгоритмы 1

1 <cstdl1b> Сортировка и поиск из библиотеки С

1 <ctime> Дата и время в стиле С |

1 <functional> Функциональные объекты

1 <iterator> Итераторы |

1 <memory> Распределители памяти для контейнеров |

1 <ut1lity> Операторы и пары |

Диагностика, поддержка языка, локализация

1 <cassert>Макрос assert |

<cerrno>Обработка ошибок в стиле С

1 <cfloat>Макросы предельных значений в стиле С |

1 <clim1ts>Макросы предельных значений в стиле С

<clocale>Локализация в стиле С |

1 <cs1gnal>Обработка сигналов в стиле С

1 <cstclarg>Поддержка функций с переменным числом аргументов

1 <cstdclef>Поддержка языка библиотеки С |

1 <cstdlib>Завершение программы

<ct1me>Системные часы |

<exception>Поддержка исключений |

<l1m1ts>Числовые ограничения

<loca1e>Классы локализации

<new>Работа с динамической памятью |

<stdexcept>Стандартные исключения

<type1nfo> 1Динамическая идентификация типов

Приложение 4. Заголовочные файлы стандартной библиотеки 393

Численные расчеты

, <cmath>Математические функции

<complex>Комплексные числа

<cstdl1b>Случайные числа в стиле С

<numer1c>Числовые операции

<valarray>Классы для численных расчетов

Связь стандартных библиотек С и С++

Язык C++ включает в себя те же библиотеки, что и Си, организованы они также, со следующими отличиями: Каждый заголовок файла имеет то же имя, что и версия языка Си, но с префиксом «c» и без расширения. Например, в C++ эквивалент заголовочного файла <stdlib.h> - это <cstdlib>. Каждый элемент библиотек определён в стандартном пространстве имен. Тем не менее, для совместимости с языком Cи, традиционный формат записи имен заголовочных файлов — «имя файла.h» (например, stdlib.h) также предоставляется с теми же определениями в рамках глобального пространства имен. В приведенных примерах в этом справочнике, присутствуют примеры полностью совместимы с языком программирования Си, хотя его применение не рекомендуется использовать в C++.

Основные изменения стандартных заголовочных файлов языка Си реализованных в C++:

wchar_t является одним из основных типов в C + + и поэтому он не определён в соответствующем заголовочном файле, как это было сделано в Си. Это же относится к некоторым макросам, которые теперь являются зарезервированными ключевыми словами в C++. Следующие функции претерпели некоторые изменения в своих определениях, связанных с параметрами: strchr, strpbrk, strrchr, strstr, memchr. Функции atexit, exit и abort, определенные в <cstdlib> также претерпели изменений, коснувшихся их поведения. Перегружены версии некоторых функций, с дополнительными типами данных, параметры и семантика осталась без изменений. Например, появились типы данных float и long double в прототипах функций заголовочного файла cmath.

Стандартные заголовочные файлы языка программирования Си,интегрированные в С++.

cassert (assert.h) Заголовочный файл, содержащий макросы используемые для диагностики, помогающей при отладке программы.

cctype (ctype.h) Заголовочный файл содержит прототипы функций для обработки символов.

cerrno (errno.h) Заголовочный файл в котором объявлены макросы, для идентификации ошибок по их коду.

cfloat (float.h) Заголовочный файл, описывающий различные характеристики типов данных с плавающей точкой.

ciso646 (iso646.h) Заголовочный файл, содержащий альтернативные написания некоторых макро-констант(их 12).

climits (limits.h) Заголовочный файл, содержащий предельные величины для целых чисел для данной системы.

clocale (locale.h) Заголовочный файл локализации, содержит функции и классы для потоковой обработки данных в форме естественной для разных языков (денежный формат, представление символов, сортировка строк).

cmath (math.h) Заголовочный файл, содержащий прототипы математических функций (sin, cos, tg, pow, sqrt и т. д.)

csetjmp (setjmp.h) Заголовочный файл, объявляющий макросы для нелокальных переходов.

csignal (signal.h) Заголовочный файл выполняющий обработку сигналов.

cstdarg (stdarg.h) Заголовочный файл, основная задача которого - управление аргументами функций, количество и типы которых заранее не известны.

cstddef (stddef.h) Заголовочный файл, содержащий стандартные определения макросов, например: NULL, wchar_t, size_t и др.

cstdint (stdint.h) Заголовочный файл cstdint описывает целочисленные типы данных с установленными диапазонами представления чисел.

cstdio (stdio.h) Заголовочный файл для выполнения операций ввода/вывода.

cstdlib (stdlib.h) Стандартный заголовочный файл, содержит функции для преобразования чисел в текст, выделения памяти , генерации случайных чисел и др. функций-утилит

cstring (string.h) Заголовочный файл для работы с Си-строками(нуль-терминированными)

ctime Заголовочный файл для работы с датой и временем