что означает
Ждал While или Until или конца строки
Visual Basic недостаточно умен, чтобы точно описать вам вашу ошибку, но он хотя бы говорит вам, что ему от вас нужно.
На стадии выполнения Visual Basic замечает такие ошибки, как Sqr(-25), то есть квадратный корень из -25. На нее он среагирует таким сообщением — >
что означает Неправильный вызов процедуры или неправильный параметр процедуры. В нашем случае это, конечно, недопустимое значение параметра (-25). Чтобы узнать, на какое место программы Visual Basic грешит, нажмите кнопку Debug. Visual Basic переходит в режим прерывания и подсвечивает ошибочную по его мнению строку.
К ошибкам, которые Visual Basic не обнаруживает, относятся смысловые ошибки. Так, если вы, желая увеличить число а на 1, вместо а=а+1 пишете а=а+2, то этого не заметит ни один язык в мире.
Отладка программы. Окна отладки. Режимы отладки.
Ранее я изложил пошаговый способ выполнения программы. Его вполне достаточно для отладки простейших программ. В более сложных случаях можно применять другие способы, с которыми мы сейчас познакомимся. Кстати, зачастую они и более удобны. Итак рассмотрим окна Locals, Watches, Quick Watch, Call Stack и новые способы использования окна Immediate.
На рисунке в окне кода вы видите некую процедуру Command1_Click в процессе отладки:
Выполнившись с начала до конца, эта процедура печатает в окне Immediate такую информацию:
Начало работы
20 3
18 4
16 5
14 6
12 7
10 8
Конец работы
Вообразим, что нас такая печать привела в недоумение, мы по своей бестолковости ожидали, что будет напечатано
Начало работы
20 3
18 4
Конец работы
Чтобы разобраться в случившемся, мы и затеяли отладку.
Окно Locals. Прежде всего при помощи View->Locals Window и View->Immediate Window мы вызвали на экран окна Locals и Immediate. Назначение окна Locals — показывать в режиме прерывания значения локальных переменных выполняемой процедуры. После этого клавишей F8 запустим пошаговый режим выполнения проекта, как это объяснялось ранее. После нескольких нажатий на F8 окна Locals и Immediate примут тот вид, что вы видите на рисунке. Value означает "значение". Правда, мы и без окна Locals в любой момент можем узнать значения а и Ь, просто поместив на них мышиный курсор. Однако применение окна Locals избавляет нас и от этих мизерных трудов. К тому же вы в окне можете видеть информацию о типе переменных. Щелкните по плюсику слева от Me. Форма расскажет вам о текущих значениях своих свойств.
Если вы, выполняя таким образом процедуру, перескочите на другую процедуру, то теперь в окне Locals будут видны именно ее локальные переменные. Если вам другие процедуры не интересны, то работайте в пошаговом режиме не клавишей F8, а комбинацией клавиш Shift-F8. При этом все другие процедуры будут проскакиваться мгновенно.
Точки прерывания (Breakpoints). Когда программа большая или циклов много, жать на F8 приходится слишком часто. Но ведь и нужды-то в этом нет. Обычно вам интересно останавливаться только на некоторых строках программы, мимо остальных можно и пролететь. Visual Basic позволяет вам задать такие строки — точки прерывания (Breakpoints). Щелкните по вертикальной серой полосе в левой части окна кода против строки, на которой хотите прерывать выполнение программы. На полосе появится черная точка и вся строка будет выделена черным (смотри рисунок).
Щелкните так же против всех нужных вам строк. Запускайте проект обычным образом (кнопка Start или клавиша F5). Дойдя до первой же точки прерывания, проект перейдет в режим прерывания. Продолжайте его работу клавишей F5. Проект будет останавливаться только на точках прерывания. Убираются точки прерывания так же, как и ставятся — щелчком мыши.
"Беги до курсора" — Run То Cursor. Это еще один способ остановки в нужной вам строке. Поставьте текстовый курсор в нужную строку и нажмите Ctrl-F8. Программа будет выполняться до тех пор, пока не наткнется на строку с курсором. А теперь поставьте курсор в другую строку и снова нажмите Ctrl-F8. Программа продолжит работу с того места, где остановилась, и будет выполняться до тех пор, пока не наткнется на строку с курсором. И так далее.
В процессе выполнения программы в режиме прерывания вы можете достаточно свободно переключаться между разными способами прерывания. Ставьте и убирайте точки прерывания, переставляйте курсор, нажимайте то F8, то Shift-F8, то Ctrl-F8, то F5. Visual Basic будет вас слушаться.
Описанные в этом разделе возможности отладки и некоторые другие приведены в меню Debug (отладка).