оператор ++-- это баг или фича?

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

оператор ++-- это баг или фича?

Сообщение Сквозняк » 18.05.2011 21:59:52

Код: Выделить всё
var
A: longint;
begin
A:=10;
A:=A++++--++--1;
Writeln(A);
end.
Компилится и выполняется, компилятор 2.4.0
Сквозняк
энтузиаст
 
Сообщения: 1126
Зарегистрирован: 29.06.2006 22:08:32

Re: оператор ++-- это баг или фича?

Сообщение Nik » 18.05.2011 22:55:53

Фича и, вроде, бы, довольно старая. В Lazarus есть опция для её включения/выключения - "Операторы в стиле Си" (параметр компиляции -Sc).
Аватара пользователя
Nik
энтузиаст
 
Сообщения: 573
Зарегистрирован: 04.02.2006 00:08:09
Откуда: Киров

Re: оператор ++-- это баг или фича?

Сообщение SII » 18.05.2011 23:06:25

Но ведь это вроде как не противоречит синтаксису Паскаля. Первый плюс после А -- это операция сложения, а остальные плюсы-минусы -- это унарные плюсы-минусы, (не) меняющие знак второго операнда.
SII
новенький
 
Сообщения: 64
Зарегистрирован: 24.06.2007 17:15:09
Откуда: Зеленоград

Re: оператор ++-- это баг или фича?

Сообщение Sergei I. Gorelkin » 18.05.2011 23:43:50

Операторы в стиле Си - это +=,-=,*= и /=. Инкремента и декремента среди них нет. Тут действительно унарные плюсы-минусы.

Немного смущает тот факт, что унарный плюс прикрутили довольно недавно, и в 2.4.0 его как бы не должно быть...
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
 
Сообщения: 1406
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Re: оператор ++-- это баг или фича?

Сообщение Сквозняк » 18.05.2011 23:58:32

Лоровская машина времени :mrgreen:
Сквозняк
энтузиаст
 
Сообщения: 1126
Зарегистрирован: 29.06.2006 22:08:32

Re: оператор ++-- это баг или фича?

Сообщение Иван Шихалев » 19.05.2011 08:09:45

Sergei I. Gorelkin писал(а):Немного смущает тот факт, что унарный плюс прикрутили довольно недавно

А мне кажется, что он всегда был.
Аватара пользователя
Иван Шихалев
энтузиаст
 
Сообщения: 1138
Зарегистрирован: 15.05.2006 11:26:13
Откуда: Екатеринбург

Re: оператор ++-- это баг или фича?

Сообщение kipar » 19.05.2011 11:33:18

Унарный плюс был всегда http://www.moorecad.com/standardpascal/iso7185.html#6.7.2.1%20General
Так что остается только считать ++-- фичей.
kipar
новенький
 
Сообщения: 78
Зарегистрирован: 04.03.2010 12:15:54


Вернуться в Free Pascal Compiler

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4

Рейтинг@Mail.ru