Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

n++ i ++n razlika?

[es] :: Javascript i AJAX :: n++ i ++n razlika?

[ Pregleda: 10453 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

gojic
Indjija,Srbija

Član broj: 276886
Poruke: 28
93.87.158.*



Profil

icon n++ i ++n razlika?12.05.2016. u 12:03 - pre 95 meseci
Imam jedno teorijsko pitanje koja je u stvari razlika izmedju "post increment n++" i "pre increment ++n".

Znam sta znace i sta rade, al mi nije jasno zasto to rade.

npr:
x = 0;
y = broj[x++]; znam da dobijam nulu

x = 0;
y = broj[++x]; znam da dobijam 1

zasto u prvom slucaju vraca originalnu vrednost a u drugom dodaje za jedan kao sto bi i trebalo?

i druga stvar,mozda glupo pitanje,al zasto ne bih koristio

var x = 0;
x++;
document.write(num); dobijam 1

Nekako mi logicnije da radim ovako.

Da li ima neke prakticne razlike izmedju ova dva nacina,mozda je ovaj prvi nacin uredniji ili je svejedno, i zavisi iskljucivo od onogo koji kodira i njegove licne navike ili zelje?

Hvala

[Ovu poruku je menjao gojic dana 12.05.2016. u 13:28 GMT+1]
 
Odgovor na temu

djoka_l
Beograd

Član broj: 56075
Poruke: 3445

Jabber: djoka_l


+1462 Profil

icon Re: n++ i ++n razlika?12.05.2016. u 12:22 - pre 95 meseci
Code:

x=0;
y=x++;


rezlutat je y=0 i x=1

Code:

x=0;
y=++x;


rezultat je y=1 i x=1

Znači razlika je da li se na x dodaje 1 PRE ILI POSLE doeljivanja vrednosti iksa ipsilonu.

To je isto kao da pitaš, u čemu je razlika između sledeća dva koda

Code:

x=0;
y=x
x=x+1;


i

Code:

x=0;
x=x+1;
y=x;


Razlika je u redosledu operacija...
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12846



+4783 Profil

icon Re: n++ i ++n razlika?12.05.2016. u 12:54 - pre 95 meseci
Ili, ako ce ti tako biti lakse, mozes posmatrati operator ++ kao funckiju sa potpisom (pseudo kod)
int ++(ref int x)

(ovde namerno ne koristim JS nacin pisanja funkcije posto je u JS-u to manje striktno).
Dakle, funkcija, prima broj, i vraca broj.

U slucaju da koristis:
y=x++;

to je kao da je u pitanju funkcija:
Code:

int ++(ref int x)
{
    x = x + 1;
    return x;
}


u slucaju:
y = ++x;

to je kao da je funkcija:
Code:
int ++(ref int x)
{
    x = x + 1;
    return x - 1;
}

 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+710 Profil

icon Re: n++ i ++n razlika?12.05.2016. u 12:59 - pre 95 meseci
Sve u svemu, jedno veliko sr*nje koje se bez ikakvog razloga kopira iz jezika u jezik.
 
Odgovor na temu

negyxo
Aleksandar Perkuchin

Član broj: 29751
Poruke: 898
*.dynamic.isp.telekom.rs.



+171 Profil

icon Re: n++ i ++n razlika?12.05.2016. u 13:06 - pre 95 meseci
^U jeee pa kakav si ti to haxor, ocigledno ne znas da napises program u jednoj liniji :D
 
Odgovor na temu

djoka_l
Beograd

Član broj: 56075
Poruke: 3445

Jabber: djoka_l


+1462 Profil

icon Re: n++ i ++n razlika?12.05.2016. u 13:23 - pre 95 meseci
Uzgred, zašto postoje post i preincrement operacije.
Razlog je vrlo jednostavan - prvi Unix, kao C programski jezik nastali su na PDP-11 računarima. Ta arhitektura je imala vrlo dobro urađen ortogonalan set instrukcija i među adresnim modovima postojali su postincrement i predecrement modovi,

Na primer, ako je arr neki niz, tada je bilo jednostavno da se iskompajlira:

x=arr[i++]

ili

x=arr[--j]

Zbog "simetrije" jezika dodati su i operatori preincrement i postdecrement.

Jednostavno, C je napravljen da zameni asembler, a pisci su želeli da generisanje mašinskog koda bude jednostavno.

Svi ostali jezici nastali kao derivati C, nasledili su i ove operatore, što iz nekakvog automatizma, što iz želje da programerima olakša tranziciju sa jednog na drugi jezik.
 
Odgovor na temu

VladaSu

Član broj: 31634
Poruke: 1099
*.tippnet.co.rs.



+218 Profil

icon Re: n++ i ++n razlika?12.05.2016. u 18:23 - pre 95 meseci
x = 1;
y = 2;

z = x + y++; // u ovom slucaju z ce biti 3 i y 3
z = x + ++y // u ovom slucaju z ce biti 4 i y 3

Da li ima smisla? Ima.
Da li moze bez ovoga? Moze kao i sto moze bez 90% naredbi.
[Ovu poruku je menjao VladaSu dana 14.06.2003. u 11:22 GMT+1]
 
Odgovor na temu

[es] :: Javascript i AJAX :: n++ i ++n razlika?

[ Pregleda: 10453 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.