Задача этой книги дать краткое и четкое изложение языка С++ в соответствии со стандар том iso/iec 14882. Она предназначена для студентов, изучающих язык «с нуля»



Download 2 Mb.
bet223/232
Sana29.03.2022
Hajmi2 Mb.
#516205
TuriЗадача
1   ...   219   220   221   222   223   224   225   226   ...   232
Bog'liq
Т. А. Павловская C C . Программирование на языке высокого уровня

ПРИЛОЖЕНИЕ 4


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


Ввод/вывод





Ôóíêöèè ââîäa/âûâîäa â ñòèëå C



Ôóíêöèè äëя ðaáîòû ñ ñèìâîëaìè



Ôóíêöèè ââîäa/âûâîäa â ñòèëå C äëя ìíîãîáaéòíûõ ñèìâîëîâ



Ôaéëîâûå ïîòîêè



Ìaíèïóëяòîðû



Áaçîâûå êëaññû ïîòîêîâ ââîäa/âûâîäa



Ïðåäâaðèòåëüíûå îáúяâëåíèя ñðåäñòâ ââîäa/âûâîäa



Còaíäaðòíûå îáúåêòû è îïåðaöèè ñ ïîòîêaìè ââîäa/âûâîäa



Âõîäíûå ïîòîêè



Âûõîäíûå ïîòîêè



Còðîêîâûå ïîòîêè



Áóôåðèçaöèя ïîòîêîâ

Строки





Ôóíêöèè êëaññèôèêaöèè ñèìâîëîâ







Ôóíêöèè äëя ðaáîòû ñî ñòðîêaìè â ñòèëå C



Ôóíêöèè äëя ðaáîòû ñ ñèìâîëaìè



Còðîêîâûé êëaññ

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


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





Áèòîâîå ìíîæåñòâî



Äâóñòîðîííяя î÷åðåäü



Äâóñâяçíûé ñïèñîê



Cëîâaðü, ñëîâaðü ñ äóáëèêaòaìè



Î÷åðåäü, î÷åðåäü ñ ïðèîðèòåòaìè



Ìíîæåñòâî, ìíîæåñòâî ñ äóáëèêaòaìè



Còåê



Îäíîìåðíûé ìaññèâ

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





Àëãîðèòìû



Cîðòèðîâêa è ïîèñê èç áèáëèîòåêè C



Äaòa è âðåìя â ñòèëå C



Ôóíêöèîíaëüíûå îáúåêòû



Èòåðaòîðû



Ðañïðåäåëèòåëè ïaìяòè äëя êîíòåéíåðîâ



Îïåðaòîðû è ïaðû

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





Ìaêðîñ assert



Îáðaáîòêa îøèáîê â ñòèëå C



Ìaêðîñû ïðåäåëüíûõ çía÷åíèé â ñòèëå C



Ìaêðîñû ïðåäåëüíûõ çía÷åíèé â ñòèëå C



Ëîêaëèçaöèя â ñòèëå C



Îáðaáîòêa ñèãíaëîâ â ñòèëå C



Ïîääåðæêa ôóíêöèé ñ ïåðåìåííûì ÷èñëîì aðãóìåíòîâ



Ïîääåðæêa яçûêa áèáëèîòåêè C



Çaâåðøåíèå ïðîãðaììû



Cèñòåìíûå ÷añû



Ïîääåðæêa èñêëþ÷åíèé



×èñëîâûå îãðaíè÷åíèя



Êëaññû ëîêaëèçaöèè



Ðaáîòa ñ äèíaìè÷åñêîé ïaìяòüþ



Còaíäaðòíûå èñêëþ÷åíèя



Äèíaìè÷åñêaя èäåíòèôèêaöèя òèïîâ

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





Ìaòåìaòè÷åñêèå ôóíêöèè



Êîìïëåêñíûå ÷èñëa



Cëó÷aéíûå ÷èñëa â ñòèëå C



×èñëîâûå îïåðaöèè



Êëaññû äëя ÷èñëåííûõ ðañ÷åòîâ

ПРИЛОЖЕНИЕ 5


Константы, макросы и типы данных

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


Ïåðå÷èñëåííûå â ýòîì ïðèëîæåíèè êîíñòaíòû, ìaêðîñû è òèïû èñïîëüçóþòñя â îñíîâíîì â ôóíêöèяõ ñòaíäaðòíîé áèáëèîòåêè, óíañëåäîâaííûõ èç яçûêa C.

assert

vOid assert(int expressiOn);


Ìaêðîñ assert ïðåðûâaåò âûïîëíåíèå ïðîãðaììû, åñëè çía÷åíèå âûðaæåíèя expressiOn яâëяåòñя ëîæíûì (íóëåâûì). Ïðè çaâåðøåíèè ðaáîòû âûâîäèòñя ñîîáùåíèå îá îøèáêå âèäa: Assertion failed: expression, file <имя_файла>, line <но( мер_строки>.

BUFSIZ

Êîíñòaíòa BUFSIZ ïðèìåíяåòñя äëя çaäaíèя ðaçìåða â áaéòaõ áóôåða ïîòîêa äaí- íûõ ôóíêöèяìè fOpen(), freOpen(), setbuf(). Ïðè îòêðûòèè ïîòîêa äaííûõ ê íåìó aâòîìaòè÷åñêè ïðèñîåäèíяåòñя áóôåð äëèíîé BUFSIZ. Ìèíèìaëüíûé ðaçìåð BUFSIZ — 255 áaéòîâ.



CHAR_BIT



 êîíñòaíòå CHAR_BIT õðaíèòñя êîëè÷åñòâî áèò íaèáîëåå êîðîòêîãî òèïa äaííûõ (ïî ñòaíäaðòó — òèïa Char). Ìèíèìaëüíîå çía÷åíèå CHAR_BIT — 8.

Cin, COut, Cerr, ClOg

Îáúåêòû ïîòîêîâûõ êëaññîâ, ñâяçaííûå ñî ñòaíäaðòíûìè ïåðèôåðèéíûìè óñò- ðîéñòâaìè.



Объект

Поток данных

Класс

Cin

stdin

istream

COut

stdOut

Ostream

Cerr

stderr

Ostream

ClOg

stderr (áyôepèçoâaííûé)

Ostream


CHAR_MAX, CHAR_MIN

 êîíñòaíòå CHAR_MAX ñîäåðæèòñя ìaêñèìaëüíîå çía÷åíèå, êîòîðîå ìîæåò èìåòü òèï Char. Åñëè â êîíêðåòíîé ðåaëèçaöèè ïîääåðæèâaåòñя òèï signed Char, òî çía-


÷åíèå CHAR_MAX èäåíòè÷íî çía÷åíèþ SCHAR_MAX, â ïðîòèâíîì ñëó÷aå — UCHAR_MAX.
 êîíñòaíòå CHAR_MIN ñîäåðæèòñя ìèíèìaëüíîå çía÷åíèå, êîòîðîå ìîæåò èìåòü òèï Char. Åñëè â êîíêðåòíîé ðåaëèçaöèè ïîääåðæèâaåòñя òèï signed Char, òî çía-
÷åíèå CHAR_MIN èäåíòè÷íî çía÷åíèþ SCHAR_MIN, â ïðîòèâíîì ñëó÷aå — UCHAR_MIN.

ClOCk_t

Òèï äaííûõ ClOCk_t ïðåäíaçía÷åí äëя ïðåäñòaâëåíèя âðåìåíè:


typedef lOng ClOCk_t;
Çía÷åíèå ýòîãî òèïa âîçâðaùaåò ôóíêöèя ClOCk().

CLOCKS_PER_SEC

 êîíñòaíòå CLOCKS_PER_SEC ñîäåðæèòñя êîëè÷åñòâî öèêëîâ ïðîöåññîða â ñåêóíäó. Ôóíêöèя ClOCk() âîçâðaùaåò âðåìя, âûðaæåííîå â öèêëaõ ïðîöåññîða. ×òîáû ïå- ðåâåñòè åãî â ñåêóíäû, åãî íåîáõîäèìî ðaçäåëèòü ía CLOCKS_PER_SEC.



DBL…

(ñì. FLT…)



div_t

Còðóêòóða div_t ñëóæèò äëя îïðåäåëåíèя òèïa âîçâðaùaåìîãî çía÷åíèя ôóíêöèè


div(). Ïîëå ñòðóêòóðû quOt ñîäåðæèò ÷añòíîå, a ïîëå rem — îñòaòîê îò äåëåíèя.
typedef struCt{ int quOt; int rem;
}div_t;

EDOM

Ìaêðîñ EDOM çaäaåò îòëè÷íóþ îò íóëя öåëî÷èñëåííóþ êîíñòaíòó, ÷òî ïîçâîëяåò îáíaðóæèâaòü îøèáêó îáëañòè, òî åñòü îøèáêó, âîçíèêaþùóþ ïðè âûõîäå aðãó- ìåíòa ça îáëañòü çía÷åíèé, äëя êîòîðîé îïðåäåëåía ìaòåìaòè÷åñêaя ôóíêöèя.



Êîíñòaíòa EOF ñîîáùaåò îá îêîí÷aíèè ôaéëa (ïðåäñòaâëяåò ñîáîé îòðèöaòåëüíîå öåëîå ÷èñëî).

ERANGE

Ìaêðîñ ERANGE çaäaåò îòëè÷íóþ îò íóëя öåëî÷èñëåííóþ êîíñòaíòó, èñïîëüçóå- ìóþ äëя ôèêñaöèè îøèáêè äèaïaçîía. Îøèáêa äèaïaçîía âîçíèêaåò â ñëó÷aå, åñëè ðåçóëüòaò ôóíêöèè íå ìîæåò áûòü ïðåäñòaâëåí îáúåêòîì òèïa dOuble.  ýòîì ñëó÷aå ïåðåìåííaя årrnî (ñì. íèæå) óñòaíaâëèâaåòñя â çía÷åíèå ERANGE.



errnO

Ãëîáaëüíaя öåëî÷èñëåííaя ïåðåìåííaя errnO èñïîëüçóåòñя äëя îáðaáîòêè îøè- áîê, âîçíèêaþùèõ ïðè èñïîëüçîâaíèè ìaòåìaòè÷åñêèõ ôóíêöèé (ìîæåò ñîäåð- æaòü íîìåð îøèáêè, êîòîðûé äaåò äîïîëíèòåëüíóþ èíôîðìaöèþ î ïîñëåäíåé èç îáíaðóæåííûõ îøèáîê).



EXIT_FAILURE

Êîä ñîñòîяíèя, êîòîðûé ìîæåò èñïîëüçîâaòüñя ïðè îáðaùåíèè ê áèáëèîòå÷íîé ôóíêöèè exit() äëя ñîîáùåíèя îá îøèáêå.



EXIT_SUCCESS



Êîä ñîñòîяíèя, êîòîðûé ìîæåò èñïîëüçîâaòüñя ïðè îáðaùåíèè ê áèáëèîòå÷íîé ôóíêöèè exit() äëя ñîîáùåíèя îá óñïåøíîì çaâåðøåíèè ïðîãðaììû.

FILE

Òèï äaííûõ FILE ñîäåðæèò èíôîðìaöèþ, íåîáõîäèìóþ äëя âûïîëíåíèя îïåða- öèé ñ ôaéëîì. Còðóêòóða ýòîãî òèïa äaííûõ çaâèñèò îò êîíêðåòíîé ðåaëèçaöèè, íèæå ïðèâåäåíî îäíî èç âîçìîæíûõ îïèñaíèé.


typedef struCt{
int level; // ôëaã ñîñòîяíèя áóôåða unsigned flags; // ôëaã ñîñòîяíèя ôaéëa Char fd; // ïðåôèêñ ôaéëa unsigned Char hOld; // íåïåðåäaííûé ñèìâîë
int bsize; // ðaçìåð âíóòðåííåãî áóôåða
unsigned Char_FAR *buffer; /* çía÷åíèå óêaçaòåëя äëя äîñòóïa âíóòðè áóôåða; çaäaåò ía÷aëî áóôåða, ía÷aëî ñòðîêè èëè òåêóùåå çía÷åíèå óêaçaòåëя âíóòðè áóôåða â çaâèñèìîñòè îò ðåzèìa áóôåðèçaöèè */
unsigned Char FAR *Curp; /* òåêóùåå çía÷åíèå óêaçaòåëя äëя äîñòóïa âíóòðè áóôåða; çaäaåò òåêóùóþ ïîçèöèþ â áóôåðå äëя îáìåía ñ ïðîãðaììîé */
unsigned istemp; // ôëaã âðåìåííîãî ôaéëa
shOrt tOken; // ìaðêåð äåéñòâèòåëüíîñòè ôaéëa
}FILE;


FILENAME_MAX

Cïåöèaëèçaöèя øaáëîía êëañña basiC_filebuf äëя òèïa äaííûõ Char. typedef basiC filebuf filebuf;
 êîíñòaíòå FILENAME_MAX çaäaåòñя îãðaíè÷åíèå ía äëèíó èìåíè ôaéëa.

flOat_rOund_style

Ïåðå÷èñëяåìûé òèï flOat_rOund_style îïðåäåëяåò êîíñòaíòû äëя ðaçëè÷íûõ ñïî- ñîáîâ îêðóãëåíèя ïðè ñëîæåíèè ÷èñåë ñ ïëaâaþùåé òî÷êîé (ñì. numeriC_limits).


enum flOat_rOund_style{ rOund_indeterminate, rOund tOward_zerO, rOund tO_nearest, rOund_tOward_infinity,
rOund tOward neg_infinity
};

FLT…

Cëåäóþùèå êîíñòaíòû îïðåäåëåíû òaêæå äëя òèïîâ dOuble (DBL_…) è lOng dOuble(LDBL_…):





Константа

Описание

FLT_DIG

Êîëè÷åñòâî âåðíûõ äåñяòè÷íûõ öèôð â îáúåêòå òèïa flOat

FLT_EPSILON

Ìèíèìaëüíîå âîçìîæíîå çía÷åíèå ïåðåìåííîé òèïa flOat, òaêîå,
÷òî 1.0 + FLT_EPSILON != 1.0

FLT_MANT_DIG

Êîëè÷åñòâî öèôð ïî îñíîâaíèþ FLT_RADIX â ìaíòèññå äëя ÷èñåë òèïa
flOat

FLT_MAX

Ìaêñèìaëüíîå ÷èñëî ñ ïëaâaþùåé òî÷êîé òèïa flOat

FLT_ÌÀÕ_10_ÅÕÐ

Ìaêñèìaëüíîå öåëîå ÷èñëî, äëя êîòîðîãî ñïðaâåäëèâî, ÷òî ÷èñëî, ïîëó÷åííîå ïðè âîçâåäåíèè ÷èñëa 10 â ñòåïåíü FLT_MAX_10_EXP, ìîæåò áûòü ïðåäñòaâëåíî îáúåêòîì òèïa flOat

FLT_MAX_EXP

Ìaêñèìaëüíîå öåëîå ÷èñëî, äëя êîòîðîãî ñïðaâåäëèâî, ÷òî ÷èñëî, ïîëó÷åííîå ïðè âîçâåäåíèè ÷èñëa FLT_RADIX â ñòåïåíü (FLT_MAX_EXP - 1), ìîæåò áûòü ïðåäñòaâëåíî îáúåêòîì òèïa flOat

FLT_MIN

Ìèíèìaëüíîå íîðìaëèçîâaííîå ÷èñëî ñ ïëaâaþùåé òî÷êîé, êîòîðîå ìîæåò áûòü ïðåäñòaâëåíî òèïîì flOat

FLT_MIN_10_EXP

Ìèíèìaëüíîå öåëîå ÷èñëî, äëя êîòîðîãî ñïðaâåäëèâî, ÷òî ÷èñëî, ïîëó÷åííîå ïðè âîçâåäåíèè ÷èñëa 10 â ñòåïåíü FLT_MIN_10_EXP, ìîæåò áûòü ïðåäñòaâëåíî îáúåêòîì òèïa flOat




Константа

Описание

FLT_MIN_EXP

Ìèíèìaëüíîå öåëîå ÷èñëî, äëя êîòîðîãî ñïðaâåäëèâî, ÷òî ÷èñëî, ïî- ëó÷åííîå ïðè âîçâåäåíèè ÷èñëa FLT_RADIX â ñòåïåíü (FLT_MIX_EXP - 1), ìîæåò áûòü ïðåäñòaâëåíî îáúåêòîì òèïa flOat

Cëåäóþùèå êîíñòaíòû íå èìåþò ñîîòâåòñòâèя äëя òèïîâ dOuble è lOng dOuble.






Download 2 Mb.

Do'stlaringiz bilan baham:
1   ...   219   220   221   222   223   224   225   226   ...   232




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish