Kezdőoldal » Számítástechnika » Programozás » Mi a különbség a c-ben az i++...

Mi a különbség a c-ben az i++ és a ++i között?

Figyelt kérdés
Azt tudom hogy az i++ az olyan, mint az i=i+1, de a ++i z mi?
2012. nov. 6. 17:10
 1/3 anonim ***** válasza:

Önmagában semmi. (Bár állítólag kicsit más kódot generál, de ugyanazt csinálja.) Megnöveli i értékét eggyel.


A különbség akkor van, ha nagyobb kifejezésben használod. Pl:

i=1; a = ++i + 10

i=1; b = i++ + 10


Az első esetben először növeli i értékét, utána használja fel a kiértékeléshez.

Vagyis a=2+10 lesz.

A második esetben először felhasználja i értékét, tehát

b=1+10

és csak utána növeli meg i-t.

i mindkét esetben 2 lesz, de a számításnál először i megnövelt értékét használja, másodszor meg az eredeti értéket, és utána növeli meg.


Vagyis:

Az elsőnél növeli i-t, utána számolja a-t,

a másodiknál kiszámolja b-t, és utána növeli meg i-t.

2012. nov. 6. 17:17
Hasznos számodra ez a válasz?
 2/3 anonim ***** válasza:
100%

A Két utasítás más sorrendben hajtódik végre.


post increment (i++) és pre increment (++i)


Egy példa:

int i=0;


cout<<T[i++] // kiírja a T tomb 0-edik elemét majd megnöveli az i-t 1-re.


cout<<T[++i] // először megnövel az i-t 1-re, majd kiírja a tomb 2. elemét (1-es indexű elemet)

2012. nov. 6. 17:22
Hasznos számodra ez a válasz?
 3/3 A kérdező kommentje:
Köszönöm a gyors válaszokat.
2012. nov. 6. 17:40

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!