Assalomu alaykum, yordam.uz saytimizga xush kelibsiz.
Bu saytda o`zingizni qiziqtirgan savollarga javob olishingiz va o`z sohangiz bo`yicha savollarga javob berishingiz mumkin. Bizning Oilamizga a'zo bo`lganingiz uchun chuqur Minnatdorchilik bildiramiz !!!

C++ da preinkriment

+3 ovoz
167 marta ko‘rilgan
so‘radi 18 yanvar, 17 vejon (2,992 bal)
tahrirlandi 01 fevral, 17 vejon
Assalom alaykum

C va C++ da preinkriment g'alati ishlayapt yoki qanday ishlashiga  tushunmayapman:

#include <iostream> int main() { int a =5; std::cout << ++a<<" "<<++a; }

natija:

7 7

Nima uchun?

C#, php, javascriptlarda natija 6 7 chiqmoqda.

3 Javoblar

+2 ovoz
javob berdi 18 yanvar, 17 abdujabbor (399 bal)
hamma tillarni parsing va ishlash principi har xil bo'ladi, shunga xar xil javob chiqqan. bilishimcha shunaqa
+2 ovoz
javob berdi 18 yanvar, 17 Faxriddin (823 bal)

Agar siz cout<<++a << endl; shaklida yozsangiz a soni oldin birga oshirilib keyin ekranga chiqadi

Agar cout << a++<< endl; shaklida yozsangiz a soni ekranga chiqarilgandan keyin a ni birga oshiradi.

+2 ovoz
javob berdi 19 fevral, 17 jalols (25 bal)

Demak oqim, prefiks, postfiks, oldin ekranga chiqarib keyin qiymatini oshiradi, oldin oshirib keyin ekranga chiqaradi degan gaplarda biz o'ylagandan ko'ra ko'proq gap  bor ekan

  1. Hisoblash o'ng tomondan boshlanadi
  2. postfiks(i++) ishlatilgan joylarda son ekranga shu paytdagi qiymatda chiqariladi
  3. prefiks(++i) ishlatilganda esa shu oqimdagi oxirgi qiymat kutiladi(Avval qiymat o'zgartirilib keyin ekranga chiqariladi)
izoh qoldirdi 19 fevral, 17 vejon (2,992 bal)
amma bu hamma tillarda emasda. Bundan tashqari, biz o'qib o'rgangan kitoblar bo'yicha  boshqacha  ishlashi kerak edi.
izoh qoldirdi 19 fevral, 17 jalols (25 bal)
men ham birinchi marta ko'rishim, tekshirib ko'rib shu xulosaga keldm

Assalomu alaykum, yordam.uz saytimizga xush kelibsiz.

Bu saytda o`zingizni qiziqtirgan savollarga javob olishingiz va o`z sohangiz bo`yicha savollarga javob berishingiz mumkin.

Bizning Oilamizga a'zo bo`lganingiz uchun chuqur Minnatdorchilik bildiramiz !!!

Telegram kanal YordamUzRss

...