x=y++;
index =--i; //prefiks
count++; //unar amal, “++count;”, bilan ekvivalent
abc-- ; //unar amal, “--abs;”, bilan ekvivalent
Bu yerda y o’zgaruvchining qiymatini x o’zgaruvchisiga o’zlashtiri-ladi va keyin bittaga oshiriladi, i o’zgaruvchining qiymati bittaga kamaytirib, index o’zgaruvchisiga o’zlashtiriladi.
sizeof amali
Har xil turdagi o’zgaruvchilar kompyuter xotirasida turli sondagi baytlarni egallaydi. Bunda, hattoki bir turdagi o’zgaruvchilar ham qaysi kompyuterda yoki qaysi operasion sistemada amal qilinishiga qarab turli o’lchamdagi xotirani band qilishi mumkin.
C++ tilida ixtiyoriy (tayanch va hosilaviy) turdagi o’zgaruvchilarning o’lchamini sizeof amali yordamida aniqlanadi. Bu amalni o’zgarmasga, turga va o’zgaruvchiga qo’llanishi mumkin.
Quyida keltirilgan programmada kompyuterning platforma-siga mos ravishda tayanch turlarining o’lchamlari chop qilinadi.
int main() {
cout<<”int turi o’lchami:”<<sizeof(int)<<”\n”;
cout<<”float turi o’lchami:”<zeof(float)<<”\n”;
cout<<”double turi o’lchami:”<izeof(double) <<”\n”;
cout<<”char turi o’lchami:”<<sizeof(char)<<”\n”;
return 0;
}
Razryadli mantiqiy amallar
Programma tuzish tajribasi shuni ko’rsatadiki, odatda qo’yilgan masalani yechishda biror holat ro’y bergan yoki yo’qligini ifodalash uchun 0 va 1 qiymat qabul qiluvchi bayroqlardan foydalaniladi. Bu maqsadda bir yoki undan ortiq baytli o’zgaruvchilardan foydalanish mumkin. Masalan, bool turidagi o’zgaruvchini shu maqsadda ishlatsa bo’ladi. Boshqa tomondan, bayroq sifatida bayt-ning razryadlaridan foydalanish ham mumkin. Chunki razryadlar faqat ikkita qiymatni - 0 va 1 sonlarini qabul qiladi. Bir baytda 8 razryad bo’lgani uchun unda 8 ta bayroqni kodlash imkoniyati mavjud.
Faraz qilaylik, qo’riqlash tizimiga 5 ta xona ulangan va tizim taxtasida 5 ta chiroqcha (indikator) xonalar holatini bildiradi: xona qo’riqlash tizimi nazoratida ekanligini mos indikatorning yonib turishi (razryadning 1 qiymati) va xonani tizimga ulanmagan-ligini indikator o’chganligi (razryadning 0 qiymati) bildiradi. Tizim holatini ifodalash uchun bir bayt yetarli bo’ladi va uning kichik razryadidan boshlab beshtasini shu maqsadda ishlatish mumkin:
7 6 5 4 3 2 1 0
Masalan, baytning quyidagi holati 1, 4 va 5 xonalar qo’riqlash tizimiga ulanganligini bildiradi:
7 6 5 4 3 2 1 0
Quyidagi jadvalda C++ tilida bayt razryadlari ustida mantiqiy amallar majmuasi keltirilgan.
1-jadval. Bayt razryadlari ustida mantiqiy amallar
Do'stlaringiz bilan baham: |