Gå til innhold

Anbefalte innlegg

Videoannonse
Annonse

i++ Betyr "autopostinkrement", det vil si at statementet utføres først, så inkrementeres i.

 

++i Betyr "autopreinkrement", det vil altså si det motsatte, inkrementer i, så utfør statementet.

 

I en for løkke vil altså ++i bety at i inkrementeres før hver iterasjon i løkken, i++ betyr at man gjør det for hver gang man har fullført en iterasjon.

Lenke til kommentar

++ Betyr "autopostinkrement", det vil si at statementet utføres først, så inkrementeres i.

ja

++i Betyr "autopreinkrement", det vil altså si det motsatte, inkrementer i, så utfør statementet.

ja

I en for løkke vil altså ++i bety at i inkrementeres før hver iterasjon i løkken, i++ betyr at man gjør det for hver gang man har fullført en iterasjon.

nei

 

Siste delen av forsløyfa ( for(a;b;c), dvs c ) utføres alltid etter hver iterasjon. Så ++i og i++ vil begge bli utført etter hver iterasjon, og når uttrykket er utført vil i=i+1.

 

Svaret er: Forskjellen er kun kosmetisk :wink:

 

CPL

 

EDIT: Eventuelt: ingen ting, da hverken første eller andre forsløyfa vil bli utført, men det var sikker ikke det du mente...

Lenke til kommentar

Ett enkelt eksempel:

int i = 0;

int a = i++; //verdien til i lagres til a, deretter legges en til i

//resultat: a=0, i=1



//***************

int i = 0;

int a = ++i; //verdien til i økes med en, deretter lagres resultatet til a

//resultat: a=1, i=1

 

CPL

Lenke til kommentar

Jeg synes Mark Allen Weiss' for-løkker er morsomme jeg:

 

for ( ; ; ){

 

//diverse algoritmer

 

}

 

er ikke det samme som denne:

 

while(true){

 

}

 

?

 

Jepp stemmer det. Men man bør breake ut av løkken en eller annen gang.

Lenke til kommentar
  • 1 måned senere...

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...