sub fun_false() uo.print("fun_false") return 0 end sub sub fun_true() uo.print("fun_true") return 1 end sub sub test() uo.print("while false and true") while fun_false() and fun_true() uo.print("Yes") wend uo.print("while true and false") while fun_false() and fun_true() uo.print("Yes") wend uo.print("while false and false") while fun_false() and fun_false() uo.print("Yes") wend end sub
Предлагаю проанализировать выше предложеный скрипт;) Ваши мысли?;)
Моя мысль, что если хоть один из циклов вдруг заработает, то его никто не остановит..
Проверить не на чем, хоть сказал бы, какой результат от выполнения такого скрипта..
YokoInjection CodeSweeper Function not found?
Possession of mathematics at the level of art - a gift that is only available for election.
Sorry for my clumsy English.
Telegram: @tatikom
проблема в обработки условий. а именно что сначала вы полняется все что на писано в условии а потом только идет проверка на результат. тоесть если будет конструкция
while (j < len(subStr)) and (Source[i+j] == subStr[j]) j = j+1 wend
то мы волей не волей создаем условие выхода за границу массаива subStr, так как будет отработано subStr[len(subStr)]. Ничего хорошего в общем... В трезвых компилятора такая ситуация не возможна.
имхо проблема не столько компилятора, сколько языка..
инжектовский бейсик высокоуровневый язык как-никак поэтому и допускает вообще существование таких страшных конструкций...