Составной оператор

Материал из Seo Wiki - Поисковая Оптимизация и Программирование

Перейти к: навигация, поиск

Составной оператор — конструкция языка программирования, состоящая из нескольких команд (операторов) языка программирования, но участвующая в программе в качестве единого оператора.

Определение

Понятие составного оператора появилось в языке программирования Алгол. Введённые в этом языке структурные операторы (ветвление, цикл) были организованы таким образом, что в них могла использоваться только одна команда языка. Чтобы не ограничивать программиста, в язык было введено понятие составного оператора: любой набор операторов, размещённый между ключевыми словами begin и end, с точки зрения транслятора становился одной командой (оператором) и мог использоваться в любом месте программы, где следует использовать один оператор.

Примеры использования

Понятие составного оператора было унаследовано языком Паскаль и множеством других языков программирования, основанных на Алголе. В Паскале условный оператор if, циклы while и for требуют в качестве ветвей и тела один оператор, поэтому при необходимости разместить в ветвях условного оператора или теле цикла несколько команд используются составные операторы:

if условие then 
  begin  { начало составного оператора }
    ... { несколько операторов }
  end { конец составного оператора }
else
  begin  { начало составного оператора }
    ... { несколько операторов }
  end; { конец составного оператора }
 
while условие do 
  begin  { начало составного оператора }
    ... { несколько операторов }
  end; { конец составного оператора }
 
for переменная := значение1 to значение2 do
  begin  { начало составного оператора }
    ... { несколько операторов }
  end; { конец составного оператора }

В языке Си составной оператор ограничивается фигурными скобками, что сокращает размеры программы, но принципиально не отличается от Паскаля и Алгола:

if (условие) 
  {  // начало составного оператора 
    ... // несколько операторов 
  } // конец составного оператора 
else
  {  // начало составного оператора 
    ... // несколько операторов 
  } // конец составного оператора 
 
while (условие) 
  {  // начало составного оператора 
    ... // несколько операторов 
  } // конец составного оператора 
 
do
  {  // начало составного оператора 
    ... // несколько операторов 
  } // конец составного оператора 
while (условие);
 
for (инициализация; условие; оператор)
  {  // начало составного оператора 
    ... // несколько операторов 
  } // конец составного оператора

Отказ от составных операторов

В ряде языков программирования отказались от использования составных операторов. В них в любых синтаксических конструкциях предусматривается возможность использования нескольких операторов, записываемых последовательно, в результате необходимости в специально организованных составных операторах нет. Тем не менее, даже в таких языках некоторые элементы, например, тела процедур и функций, фактически являются составными операторами, хотя и не называются так.



Личные инструменты

Served in 0.107 secs.