Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Правильный синтаксис команды безусловного перехода Goto (http://forum.oszone.net/showthread.php?t=257129)

Dragokas 26-03-2013 02:59 2118621

Правильный синтаксис команды безусловного перехода Goto
 
Как правильно писать:

1)
Код:

goto :metka
или
2)
Код:

goto metka

ShaddyR 26-03-2013 03:07 2118626

.bat - оба варианта
pascal - 2й

ЗЫ: тебя в поисковиках забанили? ;)

Dragokas 26-03-2013 03:10 2118629

Ок, ShaddyR, посоветуйте источник, который Вы считаете авторитетным (т.с. истина последней инстанции).

Просто на деле работают оба варианта.

ShaddyR 26-03-2013 03:24 2118633

Diskretor, смотря в чем програмим и что интересует. Для меня изначально самым авторитетным источником изложения синтаксиса был великий параметр /? (он же ?, он же -help etc.) :). Периодически перечитываю статьи из серии уроки bat-аники — Яндекс: нашлось 74 тыс. ответов - с свое время оказались мягко говоря познавательными)

Цитата:

Цитата Diskretor
Просто на деле работают оба варианта. »

именно так. Тебя интересует, было ли так всегда?

Dragokas 26-03-2013 03:31 2118637

Цитата:

Цитата ShaddyR
в чем програмим »

В данном случае CMD, OS Win7.
Цитата:

Цитата ShaddyR
Тебя интересует, было ли так всегда? »

Да, интересно.

ShaddyR 26-03-2013 04:52 2118646

Diskretor, в хелпе DOS обычно прописывается отсутствие знака ":" в команде перехода у метки, при необходимости оного в тексте, куда идет ссылка, в т.ч. в примерах. Если копать чуть глубже, то можно обнаружить, что имеет место некоторое упрощение синтаксиса (с какого времени - не скажу, скорее всего с последних версий MS-DOS) - изначально метки при использовании данной команды предполагали наличие ":", но затем это перестало быть обязательным - кроме случая спец.-меток, доступных при включении расширенной обработки команд. Напр., :EOF, которая к тому же не должна была содержать после себя в строке пробела.

Как-то так, вкратце.

Dragokas 26-03-2013 23:04 2119371

Вот и я привык писать : с метками. Т.к. чаще всего использую команду Call, а не Goto.
А тут получается как бы путаница. Системная метка пишется всегда с :
Да и Goto иногда воспринимает такой синтаксис без ошибок.
Но в более сложных сценариях это приводит к вылету.


Время: 20:23.

Время: 20:23.
© OSzone.net 2001-