Этот самый распространенный итерационный оператор может содержать до трех частей. Первая, которая может встречаться только раз, служит для инициализации в начале цикла. Вторая — проверка условия, в результате которой определяется, выполнять ли цикл снова. И третья — "приращение" — обычно (но не обязательно) используется для инкремента счетчика, управляющего продолжением цикла — именно этот счетчик обычно анализируется во второй части оператора. Форма оператора/or:
for
(инициализация; булевское ^выражение; приращение) встроенный_оператор
Любая из трех частей
(инициализация, булевское^выражение, приращение)
может отсутствовать. Когда
булевское_выражение равно false
управление передается от начала цикла к строке, следующей за
class ForTestApp {
const int StartChar = 33;
const int EndChar = 125;
static public void MainQ {
for (int i = StartChar; i <= EndChar; i++) {
Console.WriteLine("{0}={1}", i, (char)i); } } }
Последовательность событий в этом цикле
for
такова.
1. В стеке выделяется место для размерной переменной /, и она инициализируется значением 33. Эта переменная выйдет из области видимости по завершении цикла
for.
2
.
Встроенный оператор выполняется, пока значение / меньше 126. Здесь я применил составной оператор, но, поскольку в цикле содержится одна строка, будет тот же результат, если убрать фигурные скобки.
3. После каждого прохода цикла переменная
i
увеличивается на 1.