
- •Лабораторна робота № 4. Розробка простих консольних додатків за допомогою Microsoft Visual Studio 2010 Теоретичні відомості
- •Короткий огляд середовища розробки
- •Компіляція програми у Visual Studio. Виправлення синтаксичних помилок
- •Корисне сполучення клавіш
- •Виконання лабораторної роботи Створення простих консольних програм
- •Компіляція програми у Visual Studio. Виправлення синтаксичних помилок
- •Відладка у Visual Studio. Пошук логічних помилок в програмі
- •Покрокове проходження для пошуку помилки
- •Продовження налагодження
- •Закінчення сеансу налагодження
- •Налагодження в разі аварійного завершення програми
Відладка у Visual Studio. Пошук логічних помилок в програмі
Як було показано в попередньому розділі на прикладі програми визначення мінімального і максимального серед цілих чисел, додаток може збиратися і працювати, але не виконувати повністю того, що йому належить робити.
Це означає, що текст програми не відповідає специфікації поставленого завдання і містить логічну помилку, а можливо, відразу і кілька логічних помилок.
З усіх категорій помилок логічні помилки знайти найбільш важко, так як вони беруть свій початок в помилковому міркуванні при пошуку рішення задачі. Такі помилки виявляються на етапі виконання програми і призводять до невірних результатів, до зупинки або «зависання» програми. Це робить необхідним тестування додатка з різними наборами даних. Тільки ретельне тестування на найрізноманітніших значеннях даних може дати на практиці гарантію того, що додаток не містить логічних помилок.
Найпростішим способом локалізації логічної помилки є покрокове простежування результатів виконання всіх операторів програми. При налагодженні додатка в VS можна відображати значення вказаних змінних або виразів в будь-якій точці програми.
Обчислені значення можна, порівнювати з тими, що мають бути, і якщо виявляється невідповідність, то, логічна помилка локалізована.
Початок сеансу налагодження
Перший крок налагодження додатку - це вибір команди Почати налагодження (F5) на стандартній панелі інструментів або в меню Налагодження - Почати налагодження (Debug – Start Debugging), після чого додаток запускається в режимі налагодження.
Перед початком налагодження доцільно визначити (локалізувати), тe місце в програмі, де можлива помилка. Це, як правило, дозволяє істотно скоротити сумарний час, що витрачається на пошуки помилки. У нашому прикладі (див. приклад 2) помилка може міститися в тому фрагменті програми, який вводить значення чисел з клавіатури.
Установка точок зупину Для того щоб відладчик переривав виконання програми на певному рядку, необхідно установити на цьому рядку точку зупину. Точка зупинки (або точка переривання) - це просто місце (наприклад, рядок з оператором програми), яке позначене для відладчика і відображається червоним кружком в полі індикаторів (вузьке поле сірого кольору з лівого краю вікна редактора коду). Коли відладчик зустрічає точку зупину, то виконувана програма моментально зупиняється (до виконання даного рядка коду).
Установити точку зупину на якому-небудь рядку коду можна за допомогою клацання по полю індикаторів даного рядка (рис. 30). Або можна установити курсор на потрібному рядку і натиснути клавішу F9.
Рис. 30. Установка точки зупину
Продовжити налагодження після крапки зупину можна повторним натисканням на кнопку F5 (Почати налагодження).
Перегляд даних у відладчику
Коли виконання програми в сеансі відладки припинено (наприклад, за допомогою точки зупину), можна вивчити стан і вміст її змінних і об'єктів. Для цього в VS можна використовувати три види вікон: Локальні, Видимі і Контрольні значення.
Вікно Локальні показує всі змінні та їх значення для поточної області видимості відладчика. Це дає вам уявлення про все, що є в поточній виконуваній функції. Змінні в цьому вікні організовані в список і автоматично налаштовуються відладчиком. Крім того, тут також показана ієрархія об'єктів програми. Наприклад, якщо дана змінна має відношення до об'єктному типу, то члени цього об'єкта перераховані всередині змінної у вигляді деревовидної структури.
Для відображення вікна Локальні слід запустити програму на виконання і у меню Відладка (Debug) обрати команду Локальні (Locals).
Рис. 31. Вибір команди відкриття вікна Локальні
На рис. 32 показаний приклад вікна Локальні. З його допомогою можна побачити локальні змінні нашого прикладу. Зверніть увагу, що змінні відображені для того, щоб показати їх значення в момент зупинки виконання програми. В процесі установки значень результати будуть відображатися в стовпчику Значення (Value).
Рис. 32. Вікно Локальні
Однак, дуже часто перегляд всіх локальних змінних дає занадто багато інформації, щоб в них можна було розібратися.
Так може відбуватися тоді, коли в області видимості даного процесу або функції знаходиться занадто багато операторів. Для того щоб побачити значення, пов'язані з тим рядком коду, на який ви дивитеся, можна використовувати вікно Видимі.
Для відображення вікна Видимі оберіть команду меню Відладка (Debug) – Вікна (Windows) - Видимі (Autos) (див. рис. 33).
Рис. 33. Вибір команди відкриття вікна Видимі
Це вікно показує значення всіх змінних і виразів, наявних в поточному виконуваному рядку коду або в попередньому рядку коду. На рис. 34 показано вікно Видимі для того ж самого рядка коду, який показано на рис. 32. Зверніть увагу на різницю.
Рис. 34. Вікно Видимі
Вікна Контрольні значення в VS дозволяють налаштовувати власний список змінних і виразів, за якими потрібно спостерігати (рис. 36). Вікна Контрольні значення виглядають і поводяться точно так само, як і вікна Локальні і Видимі. Крім того, ті елементи, які ви розміщуєте у вікнах Контрольні значення, зберігаються між сеансами налагодження.
Для відображення вікна Видимі оберіть команду меню Відладка (Debug) – Вікна (Windows) - Контрольні значення (Watch) - Контрольне значення 1 (Watch 1) (див. рис. 35).
Рис. 35. Вибір команди відкриття вікна Контрольне значення 1
Ви отримуєте доступ до вікон Контрольні значення з меню або панелі інструментів Налагодження. Чотири вікна Контрольні значення (які називаються Контрольні значення 1, Контрольні значення 2, Контрольні значення 3 і Контрольні значення 4) дозволяють налаштувати чотири списки елементів, за якими необхідно спостерігати. Ця можливість може бути особливо корисна в тому випадку, коли кожен список відноситься до окремої області видимості вашого застосування.
Змінну або вираз у вікно Контрольні значення 1 можна додати з редактора коду. Для цього в редакторі коду виділіть змінну (або вираз), клацніть по ній правою кнопкою миші і виберіть пункт Додати контрольне значення. При цьому виділена змінна (або вираз) буде поміщена у вікно Контрольні значення 1. Ви можете також перетягнути виділений елемент в цьому вікно.
Рис. 36. Вікно Контрольні значення 1