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



Download 2 Mb.
bet16/232
Sana29.03.2022
Hajmi2 Mb.
#516205
TuriЗадача
1   ...   12   13   14   15   16   17   18   19   ...   232
Bog'liq
Т. А. Павловская C C . Программирование на языке высокого уровня

Тип void


Êðîìå ïåðå÷èñëåííûõ, ê îñíîâíûì òèïaì яçûêa îòíîñèòñя òèï void, íî ìíîæåñò- âî çía÷åíèé ýòîãî òèïa ïóñòî. Îí èñïîëüçóåòñя äëя îïðåäåëåíèя ôóíêöèé, êîòî- ðûå íå âîçâðaùaþò çía÷åíèя, äëя óêaçaíèя ïóñòîãî ñïèñêa aðãóìåíòîâ ôóíêöèè (î ôóíêöèяõ ðaññêaçûâaåòñя ía ñ. 73), êaê áaçîâûé òèï äëя óêaçaòåëåé (ñ. 51) è â îïåðaöèè ïðèâåäåíèя òèïîâ (ñ. 56).


Структура программы


Ïðîãðaììa ía яçûêå C++ ñîñòîèò èç ôóínöèé, îïèñaíèé è äèðånòèâ ïðåïðîöåññî- ða (ñ. 16). Îäía èç ôóíêöèé äîëæía èìåòü èìя main. Âûïîëíåíèå ïðîãðaììû ía-
÷èíaåòñя ñ ïåðâîãî îïåðaòîða ýòîé ôóíêöèè. Ïðîñòåéøåå îïðåäåëåíèå ôóíêöèè èìååò ñëåäóþùèé ôîðìaò:
òèï_âîçâðàùàåìîãî_çíà÷åíèÿ èìÿ ([ ïàðàìåòðû ]){ îïåðàòîðû, ñîñòàâëÿþùèå òåëî ôóíêöèè
}
Êaê ïðaâèëî, ôóíêöèя èñïîëüçóåòñя äëя âû÷èñëåíèя êaêîãî-ëèáî çía÷åíèя, ïî- ýòîìó ïåðåä èìåíåì ôóíêöèè óêaçûâaåòñя åãî òèï. Î ôóíêöèяõ ðaññêaçûâaåòñя ía ñ. 73, íèæå ïðèâåäåíû ëèøü ñaìûå íåîáõîäèìûå ñâåäåíèя:

  • åñëè ôóíêöèя íå äîëæía âîçâðaùaòü çía÷åíèå, óêaçûâaåòñя òèï void;

  • òåëî ôóíêöèè яâëяåòñя áëîêîì è, ñëåäîâaòåëüíî, çaêëþ÷aåòñя â ôèãóðíûå ñêîáêè;

  • ôóíêöèè íå ìîãóò áûòü âëîæåííûìè;

  • êaæäûé îïåðaòîð çaêaí÷èâaåòñя òî÷êîé ñ çaïяòîé (êðîìå ñîñòaâíîãî îïåða- òîða).

Ïðèìåð ñòðóêòóðû ïðîãðaììû, ñîäåðæaùåé ôóíêöèè main, f1 è f2:

äèðåêòèâû ïðåïðîöåññîða îïèñaíèя


int main(){
îïåðaòîðû ãëaâíîé ôóíêöèè
}
int f1(){
îïåðaòîðû ôóíêöèè f1
}
int f2(){
îïåðaòîðû ôóíêöèè f2
}
Ïðîãðaììa ìîæåò ñîñòîяòü èç íåñêîëüêèõ ìîäóëåé (èñõîäíûõ ôaéëîâ).
Íåñnîëünî ïðåäâaðèòåëüíûõ çaìå÷aíèé î ââîäå/âûâîäå. Â яçûêå C++ íåò âñòðîåí- íûõ ñðåäñòâ ââîäa/âûâîäa — îí îñóùåñòâëяåòñя ñ ïîìîùüþ ôóíêöèé, òèïîâ è îáúåêòîâ, ñîäåðæaùèõñя â ñòaíäaðòíûõ áèáëèîòåêaõ. Èñïîëüçóåòñя äâa ñïîñîáa: ôóíêöèè, óíañëåäîâaííûå èç яçûêa C, è îáúåêòû C++.
Îñíîâíûå ôóínöèè ââîäa/âûâîäa â ñòèëå C:
int scanf (const char* format, … ) // ââîä int printf(const char* format, … ) // âûâîä
Îíè âûïîëíяþò ôîðìaòèðîâaííûé ââîä è âûâîä ïðîèçâîëüíîãî êîëè÷åñòâa âå- ëè÷èí â ñîîòâåòñòâèè ñî ñòðîêîé ôîðìaòa format. Còðîêa ôîðìaòa ñîäåðæèò ñèì- âîëû, êîòîðûå ïðè âûâîäå êîïèðóþòñя â ïîòîê (ía ýêðaí) èëè çaïðaøèâaþòñя èç ïîòîêa (ñ êëaâèaòóðû) ïðè ââîäå, è ñïåöèôènaöèè ïðåîáðaçîâaíèя, ía÷èíaþùèå- ñя ñî çíaêa %, êîòîðûå ïðè ââîäå è âûâîäå çaìåíяþòñя êîíêðåòíûìè âåëè÷èía- ìè. Cïèñîê íaèáîëåå óïîòðåáèòåëüíûõ ñïåöèôèêaöèé ïðåîáðaçîâaíèя ïðèâåäåí â ïðèëîæåíèè 2.
Ïðèìåð ïðîãðaììû, èñïîëüçóþùåé ôóíêöèè ââîäa/âûâîäa â ñòèëå C:
include int main(){
int i;
printf("Ââåäèòå öåëîå ÷èñëî\n"); scanf("%d", &i);
printf("Âû ââåëè ÷èñëî %d, ñïañèáî!", i); return 0;
}
Ïåðâaя ñòðîêa ýòîé ïðîãðaììû — äèðåêòèâa ïðåïðîöåññîða, ïî êîòîðîé â òåêñò ïðîãðaììû âñòaâëяåòñя çaãîëîâî÷íûé ôaéë , ñîäåðæaùèé îïèñaíèå èñ- ïîëüçîâaííûõ â ïðîãðaììå ôóíêöèé ââîäa/âûâîäa (â äaííîì ñëó÷aå óãëîâûå ñêîáêè яâëяþòñя ýëåìåíòîì яçûêa). Âñå äèðåêòèâû ïðåïðîöåññîða ía÷èíaþòñя ñî çíaêa #. Äèðåêòèâû ïðåïðîöåññîða îïèñaíû ía ñ. 93.
Òðåòüя ñòðîêa — îïèñaíèå ïåðåìåííîé öåëîãî òèïa ñ èìåíåì i. Ïåðåìåííûå ðañ- ñìaòðèâaþòñя ía ñ. 28.
Ôóíêöèя printf â ÷åòâåðòîé ñòðîêå âûâîäèò ïðèãëaøåíèå «Ââåäèòå öåëîå ÷èñ- ëî» è ïåðåõîäèò ía íîâóþ ñòðîêó â ñîîòâåòñòâèè ñ óïðaâëяþùåé ïîñëåäîâaòåëü-

íîñòüþ \n. Ôóíêöèя scanf çaíîñèò ââåäåííîå ñ êëaâèaòóðû öåëîå ÷èñëî â ïåðå- ìåííóþ i (çíaê & îçía÷aåò îïåðaöèþ ïîëó÷åíèя aäðåña), a ñëåäóþùèé îïåðaòîð âûâîäèò ía ýêðaí óêaçaííóþ â íåì ñòðîêó, çaìåíèâ ñïåöèôèêaöèþ ïðåîáðaçîâa- íèя ía çía÷åíèå ýòîãî ÷èñëa. Ââîä/âûâîä â ñòèëå C ðaññìîòðåí â ðaçäåëå «Ôóíê- öèè ââîäa/âûâîäa» (ñ. 88).


À âîò êaê âûãëяäèò òa æå ïðîãðaììa ñ èñïîëüçîâaíèåì áèáëèîòånè nëaññîâ Ñ++:
include int main(){
int i;
cout << "Ââåäèòå öåëîå ÷èñëî\n"; cin >> i;
cout << "Âû ââåëè ÷èñëî " << i << ", ñïañèáî!"; return 0;
}
Çaãîëîâî÷íûé ôaéë ñîäåðæèò îïèñaíèå íaáîða êëaññîâ äëя óïðaâëå- íèя ââîäîì/âûâîäîì.  íåì îïðåäåëåíû ñòaíäaðòíûå îáúåêòû-ïîòîêè cin äëя ââîäa ñ êëaâèaòóðû è cout äëя âûâîäa ía ýêðaí, a òaêæå îïåðaöèè ïîìåùåíèя â ïîòîê << è ÷òåíèя èç ïîòîêa >>. Ïîòîêè ðaññìîòðåíû â ðaçäåëå «Ïîòîêîâûå êëañ- ñû» ía ñ. 265.
 äaëüíåéøåì èçëîæåíèè áóäóò èñïîëüçîâaòüñя îáa ñïîñîáa, íî â îäíîé ïðî- ãðaììå ñìåøèâaòü èõ íå ðåêîìåíäóåòñя.



Download 2 Mb.

Do'stlaringiz bilan baham:
1   ...   12   13   14   15   16   17   18   19   ...   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