Jest coś takiego w C++ jak inkrementacja czyli zwiększenie wartości zmiennej o 1. Teraz zapis i++ to tak zwana postinkrementacja np.
int i=5;
int f=i++;
//zmienna f=5 zmienna i=6
Czyli najpierw następuje przypisanie a później wartość zmiennej jest zwiększana o 1.
Zaś dla takiego kodu gdzie wykonujemy preinkrementacja:
int i=5;
int f=++i;
//zmienna f=6 zmienna i=6
Najpierw następuje zwiększenie wartości zmiennej i o jeden a dopiero później przypisanie wartości zmiennej i do zmiennej f.
Te wszystkie zasady tyczą się zarówno inkrementacji (zwiększenia o 1) jak i dekrementacji (zmniejszania o 1). Dekrementacja to np. i--. Mamy również postdekrementacje: i++ jak i predekrementacje ++i.
Zapraszam do lektury:
http://cpp0x.pl/kursy/Kurs-C++/FAQ/Czym-sie-rozni-preinkrementacja-od-postinkrementacji/574