Префикс формы [--,++]a
выполнить действие (увеличение или уменьшение), а затем использовать результат
Например:
int a[] = {0,1,2};
int i = -1;
std::cout<< a[++i] << ' ';
std::cout<< a[++i] << ' ';
std::cout<< a[++i] << std::endl;
Эквивалентная форма
int a[] = {0,1,2};
int i = -1;
for(int j =0; j < 3; j = j + 1) {
i = i + 1; // action first
std::cout<< a[i] << ' ';
}
std::cout<< std::endl;
Форма постфикса a[++,--]
использовать значение как есть, затем увеличить или уменьшить переменную
Например:
int a[] = {0,1,2};
int i = 0;
std::cout<< a[i++] << ' ';
std::cout<< a[i++] << ' ';
std::cout<< a[i] << std::endl;
Эквивалентная форма
int a[] = {0,1,2};
int i = 0;
for(int j =0; j < 3; j = j + 1) {
std::cout<< a[i] << ' ';
i = i + 1; // action after
}
std::cout<< std::endl;