Вниз
Скачать: CL | DM;

никогда не задумывался о...   Найти похожие ветки 

← →
brother ©   (2007-01-11 04:48) [0]

Ндя... тока недавно задумался.... ; нужна компилятору ... но вот для чего? вопрос пока так сформулирую...


← →
ors_archangel ©   (2007-01-11 05:23) [1]

Для упрощения синтаксичекого разбора (раз) и для незвасимости семантики от форматирования (два)


← →
brother ©   (2007-01-11 05:38) [2]

If ... then begin end  
      else  begin end;
почему после первого end ставить ; нельзя?


← →
ors_archangel ©   (2007-01-11 06:33) [3]


> brother ©   (11.01.07 05:38) [2]

Потому что предложение по смыслу продолжается, такова синтаксическая конструкция оператора if в Паскале: в Си, например, перед else может стоять ";" - там синтаксический анализатор немного по другому думает. В данном конкретносм случае это (точка с запятой) позволяет избежать ошибки, когда предложение else... будет начинаться после произвольного оператора (а не предложения if), который заканчивается на ";", т.е. если перед else стоит ";" - то тут явно ошибка, ни надо даже ничего анализировать, а если бы ";" была допустима, то нужно было бы проверить, что оператор, соответствующий данной ";" есть именно if, хотя, впрочем, это довольно просто оптимизируется. Точка с запятой ещё необходимы для независимости семантики от форматирования: т.е. можно писать:

 if
 <condition>
 then
 <statements>
 ;

а можно, как ты знаешь

 if <condition> then <statements>;

В Бейсике, например, нет ";", там разделителем строк является CRLF (переход строки), что не позволяет делать вышеприведённые выкрутасы, что имхо плохо.


← →
brother ©   (2007-01-11 06:35) [4]

ага я так и догадывался... :)
спасибо! ors_archangel


← →
Zeqfreed ©   (2007-01-11 11:34) [5]

Используйте питон и забудьте о точках с запятой :)


← →
Плохиш ©   (2007-01-11 11:37) [6]


> brother ©   (11.01.07 05:38) [2]
> If ... then begin end  
>       else  begin end;
> почему после первого end ставить ; нельзя?

Стандарт используемого языка программирования читать не пробовал?


← →
brother ©   (2007-01-12 06:51) [7]


> Стандарт используемого языка программирования читать не
> пробовал?

Пробовал, не помогает.. да и собственно... кто отвечает вопросом на вопрос?))))


← →
Правильный Вася   (2007-01-12 10:59) [8]


> brother ©   (12.01.07 06:51) [7]
> > Стандарт используемого языка программирования читать не
> > пробовал?Пробовал, не помогает..

тогда попробуй мандарины продавать, а?


← →
Сергей М. ©   (2007-01-12 11:07) [9]


> brother ©   (11.01.07 04:48)


> для чего?


Для разделения деклараций предложений в тексте программы.


← →
Anatoly Podgoretsky ©   (2007-01-12 13:59) [10]

> brother  (12.01.2007 06:51:07)  [7]

> Пробовал, не помогает.. да и собственно... кто отвечает вопросом на вопрос?))))

Например ты, или тебе можно, а другим нельзя?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.028 c
2-1168441050
09
2007-01-10 17:57
2007.01.28
qtintf.dll


3-1163059970
DelphiLexx
2006-11-09 11:12
2007.01.28
Заблокировать запись


4-1158572068
_Sergey_
2006-09-18 13:34
2007.01.28
Проблема с HT


15-1168381558
SkyRanger
2007-01-10 01:25
2007.01.28
Урезанный редактор D6 Personal


15-1167919316
1111
2007-01-04 17:01
2007.01.28
AutoCAD




   Наверх