Что нового

[Ошибки] Ошибка при использовании вложенных условных операторов While и If

voody

Новичок
Сообщения
7
Репутация
0
Здравствуйте.

Столкнулся наверное с банальной ошибкой, но не получается разобраться в чем дело. вроде как все правильно и просто. Но при компилировании кода вида

Код:
Func my_func()

	While ($a<$b)
		If $c=1 Then SoundPlay("error.wav",1)
		Else
		SoundPlay("ding.wav", 1)
		    While ($p > $q)
                    ;some code
		    WEnd
		EndIf
	WEnd

EndFunc


возникает ошибка
ERROR: missing Wend.
EndIf
^
REF: missing Wend.
While
^
ERROR: syntax error
EndIf
^

в хелпе по условным операторам написано, что они могут быть вложенными:
If statements may be nested.
в чем мой косяк ?
 

gregaz

AutoIT Гуру
Сообщения
1 166
Репутация
299
Re: [Ошибки] Ошибкапри использовании вложенных условныхоператоров While и If

voody сказал(а):
в чем мой косяк ?
Вообще-то надо так :
Код:
Func my_func()

    While $a<$b
        If $c=1 Then 
            SoundPlay("error.wav",1)
        Else
            SoundPlay("ding.wav", 1)
            While $p > $q
                    ;some code
            WEnd
        EndIf
    WEnd

EndFunc



Добавлено:
Сообщение автоматически объединено:

Выражение :
Код:
If $c=1 Then SoundPlay("error.wav",1)
самодостаточное.
Оно может использоваться только без последующих : Else и EndIf
 
Автор
V

voody

Новичок
Сообщения
7
Репутация
0
Re: [Ошибки] Ошибкапри использовании вложенных условныхоператоров While и If

то есть дело в скобках ? скобки убрал - заработало. остальное идентично :blink:
 

snoitaleR

AutoIT Гуру
Сообщения
854
Репутация
223
Re: [Ошибки] Ошибкапри использовании вложенных условныхоператоров While и If

voody
Если используешь ключевое слово Else, то нельзя вставлять команды после ключевого слова Then в той же строке...
Надо эти команды перенести на следующую или следующие строки до ключевого слова Else...
 
Автор
V

voody

Новичок
Сообщения
7
Репутация
0
Re: [Ошибки] Ошибкапри использовании вложенных условныхоператоров While и If

Точно! разобрался )
спасибо.
 
Верх