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



Download 2 Mb.
bet170/232
Sana29.03.2022
Hajmi2 Mb.
#516205
TuriЗадача
1   ...   166   167   168   169   170   171   172   173   ...   232
Bog'liq
Т. А. Павловская C C . Программирование на языке высокого уровня

Сравнение частей строк


Äëя ñðaâíåíèя ñòðîê öåëèêîì ïðèìåíяþòñя ïåðåãðóæåííûå îïåðaöèè îòíîøå- íèя, a åñëè òðåáóåòñя ñðaâíèâaòü ÷añòè ñòðîê, èñïîëüçóåòñя ôóíêöèя COmpare:
int COmpare(COnst string& str) COnst;
int COmpare(size_type pOs1, size_type n1, COnst string& str) COnst; int COmpare(size_type pOs1, size_type n1,
COnst string& str, size_type pOs2, size_type n2) COnst;
Ïåðâaя ôîðìa ôóíêöèè ñðaâíèâaåò äâå ñòðîêè öåëèêîì è âîçâðaùaåò çía÷åíèå, ìåíüøåå 0, åñëè âûçûâaþùaя ñòðîêa ëåêñèêîãðaôè÷åñêè ìåíüøå str, ðaâíîå íóëþ, åñëè ñòðîêè îäèíaêîâû, è áîëüøåå íóëя — åñëè âûçûâaþùaя ñòðîêa áîëü- øå. Ýòa ôîðìa яâëяåòñя aíaëîãîì ôóíêöèè ñðaâíåíèя ñòðîê strstr áèáëèîòå- êè C.
Âòîðaя ôîðìa ôóíêöèè âûïîëíяåò aíaëîãè÷íûå äåéñòâèя, íî ñðaâíèâaåò ñî ñòðîêîé str n1 ñèìâîëîâ âûçûâaþùåé ñòðîêè, ía÷èíaя ñ pOs1.
Òðåòüя ôîðìa ôóíêöèè ñðaâíèâaåò n1 ñèìâîëîâ âûçûâaþùåé ñòðîêè, ía÷èíaя ñ pOs1, ñ ïîäñòðîêîé ñòðîêè str äëèíîé n2 ñèìâîëîâ, ía÷èíaя ñ pOs2.

Àíaëîãè÷íûå ôîðìû ôóíêöèé ñóùåñòâóþò è äëя ñðaâíåíèя ñòðîê òèïa string


ñî ñòðîêaìè ñòaðîãî ñòèëя.
Ïðèìåð èñïîëüçîâaíèя ôóíêöèè ñðaâíåíèя ñòðîê:
inClude inClude using namespaCe std; int main (){
string s1("ëåñíaя êîðîëåâa"), s2("ëå"), s3("êîðîâa"); COut << "s1= " << s1 << endl;
COut << "s2= " << s2 << endl; COut << "s3= " << s3 << endl;
if (s2.COmpare(s3) > 0) COut << "s2 > s3 " << endl; if (s1.COmpare(7, 4, s3) < 0)
COut << "s1[7-10] < s3 " << endl; if (s1.COmpare(7, 4, s3, 0,4 ) == 0)
COut << "s1[7-10] == s3[0-3] " << endl;
}
Ðåçóëüòaò ðaáîòû ïðîãðaììû:
s1= ëåñíaя êîðîëåâa s2= ëå
s3= êîðîâa s2> s3
s1[7–10] < s3 s1[7–10] == s3[0-3]


Получение характеристик строк


 êëaññå string îïðåäåëåíî íåñêîëüêî ôóíêöèé-÷ëåíîâ, ïîçâîëяþùèõ ïîëó÷èòü äëèíó ñòðîêè è îáúåì ïaìяòè, çaíèìaåìûé îáúåêòîì:
size_type size() COnst; // Êîëè÷åñòâî ýëåìåíòîâ ñòðîêè size_type length() COnst; // Êîëè÷åñòâî ýëåìåíòîâ ñòðîêè size_type max_size() COnst; // Ìaêñèìaëüíaя äëèía ñòðîêè size_type CapaCity() COnst; // Îáúåì ïaìяòè, çaíèìaåìûé ñòðîêîé bOOl empty() COnst; // Èñòèía, åñëè ñòðîêa ïóñòaя



Download 2 Mb.

Do'stlaringiz bilan baham:
1   ...   166   167   168   169   170   171   172   173   ...   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