Маъруза 16. Фойдаланувчи томонидан аниқланган берилганлар турлари


enum Hafta {dush, sesh, chor, paysh, juma, shanba, yaksh}


Download 69.62 Kb.
bet2/5
Sana16.06.2023
Hajmi69.62 Kb.
#1518572
1   2   3   4   5
Bog'liq
1-mavzu. Dasturlash (2)

enum Hafta {dush, sesh, chor, paysh, juma, shanba, yaksh};

Санаб ўтилувчи ўзгармаслар қуйидаги хоссага эга: агар ўзгармас қиймати кўрсатилмаган бўлса, у олдинги ўзгармас қийматидан биттага ортиқ бўлади. Келишув бўйича биринчи ўзгармас қиймати 0 бўлади. Инициализация ёрдамида ўзгармас қийматини ўзгартириш мумкин:

Санаб ўтилувчи ўзгармаслар қуйидаги хоссага эга: агар ўзгармас қиймати кўрсатилмаган бўлса, у олдинги ўзгармас қийматидан биттага ортиқ бўлади. Келишув бўйича биринчи ўзгармас қиймати 0 бўлади. Инициализация ёрдамида ўзгармас қийматини ўзгартириш мумкин:

enum Hafta {dush=8, sesh, chor=12, paysh=13, juma=16, shanba, yaksh=20}; Бу эълонда сеш қиймати 9, шанба эса 17 га тенг бўлади.

Санаб ўтилувчи ўзгармасларнинг номлари ҳар хил бўлиши керак, лекин уларнинг қийматлари бир хил бўлиши мумкин: enum{nol=0, toza=0, bir, ikki, juft=2, uсh}; Ўзгармаснинг қиймати ифода кўринишда берилиши мумкин, фақат ифодадаги номларнинг қийматлари шу қадамдагача аниқланган бўлиши керак: enum {ikki=2,turt=ikki*2}; Ўзгармасни қийматлари манфий сон бўлиши хам мумкин: enum {ikki=2,turt=ikki*2};

16.2. Санаб ўтилувчи тур устида амаллар бажариш.

16.2. Санаб ўтилувчи тур устида амаллар бажариш.

Шуни айтиб ўтиш лозимки санаб ўтилувчи турлар устида қуйидаги арифметик амаллар бажариб бўлмайди. Қуйидаги мисолда кўрайлик:

mySport = popularSport + 2; //xatolik

popularSport = FOOTBALL + SOCCER; //xatolik

popularSport = popularSport * 2; // xatolik

Шунингдек инкремент ва декремент амаллари ҳам бажариб бўлмайди.

popularSport++; //xatolik

popularSport––; //xatolik

Агар popularSport ўзгарувчисининг қийматини 1 га оширмоқчи бўлсак, cаст операторидан фойдаланишимиз мумкин. Қуйидаги мисолда келтирилган: popularSport = static_cast(popularSport + 1); Агар ўзгарувчига қиймат юкланган бўлса ва унинг қийматини 1 га оширсак, комплиятор бу ўзгарувчига санаб ўтилувчи тур қабул қилиши мумкин бўлган қийматлар ичидан ўзи қабул қилган қийматдан кейинг қийматни юклайди.


Download 69.62 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5




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