Оператор for
Рассмотрим копирование десяти элементов одного вектора в другой:
for (int i=0; i
Это эквивалентно
int i = 0; while (i
но более удобочитаемо, поскольку вся информация, управляющая циклом, локализована. При применении операции ++ к целой переменной к ней просто добавляется единица. Первая часть оператора for не обязательно должна быть описанием, она может быть любым оператором. Например:
for (i=0; i
тоже эквивалентно предыдущей записи при условии, что i соответствующим образом описано раньше.
Оператор for имеет вид
for ( выражение_1 opt ; выражение_2 opt ; выражение_3 opt ) оператор
Этот оператор эквивалентен следующему:
выражение_1; while (выражение_2) { оператор выражение_3; }
Первое выражение задает инициализацию цикла; второе выражение задает осуществляемую перед каждой итерацией проверку, по которой производится выход из цикла, если выражение становится нулем; третье выражение часто задает приращение, выполняемое после каждой итерации.
Каждое или все выражения могут быть опущены. Отсутствие выражения_2 делает подразумеваемое while-предложение эквивалентным while(1); остальные опущенные выражения просто пропускаются в описанном выше расширении.