Operatorlar ustuvorligi (Operator Precedence)
Agar hisob-kitobda birdan ortiq operator qatnashsa, C++ qaysi qismni birinchi bo'lib hisoblashni hal qilish uchun amallar tartibi qoidalariga amal qiladi.
Masalan, ko'paytirish amali qo'shish amalidan oldin bajariladi:
MISOL
int natija1 = 2 + 3 * 4; // 2 + 12 = 14
int natija2 = (2 + 3) * 4; // 5 * 4 = 20
cout << natija1 << "\n";
cout << natija2 << "\n";Bu nima uchun sodir bo'ladi?
2 + 3 * 4 ifodasida ko'paytirish birinchi bo'lib bajariladi, shuning uchun natija 14 chiqadi.
Agar siz qo'shish amali birinchi bo'lib bajarilishini xohlasangiz, qavslardan foydalanishingiz kerak: (2 + 3) * 4 natijasi 20 bo'ladi.
MASLAHAT
Hisob-kitob siz kutgan tartibda bajarilishiga ishonch hosil qilish uchun har doim qavslardan ( ) foydalaning. Bu kodingizni o'qish uchun ham osonlashtiradi.
Amallar tartibi
C++ tilidagi ba'zi keng tarqalgan operatorlar yuqori ustuvorlikdan pastiga qarab keltirilgan:
()- Qavslar*,/,%- Ko'paytirish, Bo'lish, Qoldiqli bo'lish+,-- Qo'shish, Ayirish>,<,>=,<=- Taqqoslash==,!=- Tenglikni tekshirish&&- Mantiqiy VA (AND)||- Mantiqiy YOKI (OR)=- Tayinlash
Yana bir misol
Ayirish va qo'shish amallari (agar qavslar bo'lmasa) chapdan o'ngga qarab bajariladi:
MISOL
int natija1 = 10 - 2 + 5; // (10 - 2) + 5 = 13
int natija2 = 10 - (2 + 5); // 10 - 7 = 3
cout << natija1 << "\n";
cout << natija2 << "\n";ESLATMA
Unutmang: Qavslar har doim birinchi o'rinda turadi. Hisob-kitoblaringiz tartibini boshqarish uchun ulardan foydalaning.
