Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Проверка значений переменных во время выполнения программы.
Чтобы узнать значение переменной, следует задержать над ней указатель мыши. Рядом с именем переменной на экране появится подсказка со значением, которое совсем не соответствует ожидаемому. Помимо экранной подсказки, переменная Sum со своим значением отображена в окне Auto, расположенном в левом нижнем углу (рис. 11).
Рис. 11 Просмотр значений переменных
В этом окне приведены значения последних переменных, с которыми работал Visual C++. Просмотр программы показал, что сумма не была обнулена перед началом цикла. Для внесения исправлений вначале необходимо завершить сеанс отладки, выполнив команду Debug -> Stop Debugging, затем отредактировать метод и присвоить переменной Sum начальное значение 0:
void CBuggyView:: OnFileCalculate() { CBuggyDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc);
float Sum = 0; float Average;
for (int i = 1; i < 5; i++) { Sum += pDoc-> data[i]; }
Average = Sum / 5;
OutputString.Format(" Average = %.3f", Average); Invalidate(); }
Ошибка с инициализацией исправлена. После запуска программы получим значение 2.800. Результат ошибочный. Снова начнем отладку командой Build -> Start Debug -> Go до точки прерывания. Войдем в цикл, нажав клавишу F10. Проверим значение переменной Sum. Оно равно 0. Теперь проверим значение, которое к ней прибавляется. Должно прибавляться значение 1, а на самом деле прибавляется 2. Т.е. второй ошибкой данной программы является организация цикла с 1, а не с 0. Исправим эту ошибку и запустим программу. Теперь среднее арифметическое значение чисел от 1 до 5 равно 3. Чтобы удалить из программы точку прерывания, следует установить курсор на строку с ней и нажать клавишу F9.
3.2.15. Закончив отладку, следует удалить отладочную информацию из исполняемого файла. Для этого следует выполнить команду Build -> Set Active Configuration и выбрать из раскрывающегося списка строку buggy – Win32 Release, так как по умолчанию в программы на Visual C++ включается большой объем информации, используемой отладчиком.
|