Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.01.28;
Скачать: 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 вся ветка

Текущий архив: 2007.01.28;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.038 c
5-1147125189
Константинов
2006-05-09 01:53
2007.01.28
Свойства - события


15-1168530611
EkZot
2007-01-11 18:50
2007.01.28
Как поднять делфи


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


2-1168617866
Apachi
2007-01-12 19:04
2007.01.28
Работа с командной строкой


3-1162375442
Сатир
2006-11-01 13:04
2007.01.28
Открытие курсора с переменным кол-вом параметров