Блок (программирование)

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

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

Выделение блока[править | править вики-текст]

Для выделения блоков применяются специальные конструкции языка программирования. Например, в семействе Си-образных языков (С, C++, Java) применяются фигурные скобки («{» и «}»). В языках, основанных на ALGOL, применяются ключевые слова begin и end. В языках, основанных на Lisp, применяются S-выражения (lambda, let и т. д.) В языке Python блоки определяются различиями в отступе строк кода.

Область видимости[править | править вики-текст]

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

Дополнительные возможности[править | править вики-текст]

В языках семейства Smalltalk блоки — это объекты со всеми соответствующими возможностями.

Примеры[править | править вики-текст]

Блок внутри функции на языке (Си):

 {
   int a = 1;
   int b = 2;
   int с = a + b;
   return c; 
 }

Блок на языке Pascal:

 begin
   a := 5;
   b := a - 2;
 end

Пример блока на T-SQL:

 BEGIN
   SET @a = 'f'
   IF @b = 1
     SET @a = @a + ',f'
   ELSE IF @b = 2
     SET @a = @a + ',e'
 END