Förändringar

Inte sällan är det enkla matematiska förändringar som man i en loop vill tilldela en variabel, t.ex. en konstant ökning eller minskning av variablevärdet.

Antag att du har en variabel som heter siffra som du vill ska ökas med 1. Du kan då skriva detta på följande sätt:


siffra = siffra + 1;addition av 1 kan bytas ut mot alla räknesätt och värden


siffra += 1; addition av 1 kan bytas ut mot alla räknesätt och värden


++siffra; addition kan enbart bytas ut mot subtraktion


siffra++;  addition kan enbart bytas ut mot subtraktion


I samtliga ovanstående fall har värdet på variabeln siffra ökats med 1. De två sistnämnda alternativen (++) fungerar bara då värdet ska öka med 1 medan de två tidigare alternativen kan modifieras till valfri ökning. Vill man ha en minskning är det bara att byta ut alla plustecken mot minustecken.

Var ska man skriva ++ och -- ?
Tillväxt- och minskningsoperatorerna kan som framgår ovan skrivas framför eller efter variabeln. I exemplet ovan blir resultatet detsamma, men om dessa operatorer finns i en tilldelning blir resultatet olika. Skillnaden framgår i nedanstående exempel.

Exempel 1 Exempel 2
int a, b;int a, b;
a=10;a=10;
b=++a; b=++a;
cout<<a<<endl; cout<<a<<endl;
cout<<b<<endl; cout<<b<<endl;
11 11
11 10
Här ökas värdet på a med 1 och därefter tilldelas b samma värde som a Här tilldelas b samma värde som a och därefter ökas värdet på a med 1

I och med att du nu är bekant med tillväxtoperatorn ++ så blir det kanske lite mer begripligt att C++ är en utökning av C.