C++.Бархатный путь


Операторы цикла - часть 2


  • Прежде всего, выполняется оператор инициализации цикла. Если он не пустой, выражение за выражением, слева направо. Этот этап можно назвать этапом инициализации цикла. Он выполняется один раз, в самом начале работы цикла.
  • Затем вычисляется значение выражения, которое располагается слева от оператора инициализации. Это выражение называется выражением условия продолжения цикла. Сам этап можно назвать этапом определения условий выполнимости.
  • Если значение этого выражения отлично от нуля (т.е. истинно), выполняется оператор цикла. Этот этап можно назвать этапом выполнения тела цикла.
  • После этого вычисляются значения выражений, которые располагаются слева от выражения условия продолжения цикла. Этот этап можно назвать этапом вычисления шага цикла.
  • На последних двух этапах могут измениться значения ранее определённых переменных. А потому следующий цикл повторяется с этапа определения условий выполнимости.
  • Оператор инициализации цикла - это всего лишь название оператора, который располагается в заголовке цикла. Этот оператор может инициализировать переменные, если того требует алгоритм, в этот оператор могут входить любые выражения, в конце концов, он может быть пустым. Транслятору важен синтаксис оператора, а не то, как будет выполняться данный оператор цикла.

    int qwe; for (qwe < 10; ; ) {} // Оператор инициализатор построен на основе выражения сравнения. for (this; ; ) {} // Оператор инициализатор образован первичным выражением this. for (qwe; ; ) {} // Оператор инициализатор образован первичным выражением qwe. Ещё пример: int i = 0; int j; int val1 = 0; int val2; ::::: i = 25; j = i*2; ::::: for ( ; i < 100; i++, j--) { val1 = i; val2 - j; }

    Мы имеем оператор цикла for, оператор инициализации которого пуст, а условие выполнения цикла основывается на значении переменной, которая была ранее объявлена и проинициализирована. Заголовок цикла является центром управления цикла. Управление циклом основывается на внешней по отношению к телу цикла информации.

    Ещё пример:




    Начало  Назад  Вперед



    Книжный магазин