Главная
Новости
Строительство
Ремонт
Дизайн и интерьер
Полезная информация

















Яндекс.Метрика





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

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

Определение

Понятие составного оператора появилось в языке программирования Алгол. Введённые в этом языке структурные операторы (ветвление, цикл) были организованы таким образом, что в них могла использоваться только одна команда языка. Чтобы не ограничивать программиста, в язык было введено понятие составного оператора: любой набор операторов, размещённый между ключевыми словами 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 (инициализация; условие; оператор) { // начало составного оператора ... // несколько операторов } // конец составного оператора

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

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