Модератор
Эксперт С++
13636 / 10857 / 6452
Регистрация: 18.12.2011
Сообщений: 28,941
1

Как пользоваться отладчиком (в Visual Studio)

25.09.2014, 09:12. Показов 228594. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Прежде, чем создавать темы типа "Программа вылетает после запуска",
"Выводится непонятно что" и т.п. попробуйте воспользоваться встроенным отладчиком.

Определите примерно, с какой строки начинает происходить непонятно что и поставьте там точку останова.
Это можно сделать либо щелчком мыши на этой строке левее номера строки, либо нажав клавишу F9.
Перед номером строки появится красный кружок:
Название: 1.jpg
Просмотров: 1549

Размер: 22.1 Кб
Запустите программу в отладочном режиме нажав F5 либо мышью на зелененький треугольничек.
Программа выполнится до строки с остановом.
Если этого не произошло (программа слетела раньше). То поставьте останов пораньше.
Текущая строка отмечается желтой стрелкой:
Название: 2.jpg
Просмотров: 1549

Размер: 20.1 Кб
Можно теперь посмотреть текущее значения переменных.
Они отображаются на вкладках внизу.
Несколько переменных автоматически отображается на вкладке Видимые (Auto). Помечено красной цифрой 2.
На вкладке Контрольные значения 1(Watch 1) (Цифра 3) Вы можете сами напечатать имена нужных переменных.
Наконец, можно просто подвести курсор мыши к нужной переменной в тексте (цифра 1), и ее значение отобразится.

После того, как Вы убедились, что текущие значения правильные можем продолжить выполнение программы.
Нажимая на клавишу F10 Вы каждый раз будете выполнять по одной строке.
Если выясниться, что ошибка именно в текущей строке, то можно нажав клавишу F11 зайти внутрь функций
которые вызываются в этой строке и аналогичным образом пройтись по коду функции.


Имеется возможность, повторно выполнить часть кода (откатиться назад). Для этого левой кнопкой мыши
схватите желтую стрелку и потяните ее назад по коду до желаемого места.
Таким образом, сможете, например, повторно ввести другие значения.
Этот же метод позволяет повторно выполнить код, в который Вы внесли небольшие изменения.

Дополнительно можете обратиться к микрософтовскому руководству - Отладка в Visual Studio
35
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.09.2014, 09:12
Ответы с готовыми решениями:

Как пользоваться отладкой в Visual Studio?
Здравствуйте. Я новичек, недавно начал изучать ООП на С# Есть программка состоящая из 3 класов,...

Проблемы с отладчиком в Visual Studio Express 2012
Доброго времени суток, уважаемые! Вопросов у меня несколько: 1. При написании в С# вместо...

Как продолжить пользоваться бесплатной лицензией Visual Studio 2017
Доброго времени суток, дамы и господа. Подскажите пожалуйста с такой темой, как продление...

Как пользоваться Visual Studio 2005
Подскажите плиз где можно познакомиться быстро с Visual Studio 2005 — как на ней работать с C# Мне...

3
tezaurismosis
30.09.2014, 20:48
  #2
 Комментарий модератора 
Эта тема открыта для добавления информации.
Если вы желаете обсудить данную тему, внести поправки или замечания - просьба писать вот в эту тему: https://www.cyberforum.ru/faq/thread1766346.html
Если у вас возник вопрос по отладке в Visual Studio, создайте новую тему в данном разделе.
0
DU
1500 / 1146 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
04.02.2015, 22:52 3
добавлю инфу про такую фичу как Call Stack (стек вызовов). Стек вызовов функций.
Найти можно из менюшки: Debug->Windows->Call Stack. Меню доступно, когда студия стоит
на какой-нибудь точке останова. На картинках первого поста в правой нижней области есть вкладочка
с надписью "Ст..." - вот это скорее всего оно. Стек вызовов.

Где полезен:
Часто на форуме приводят код с вопросом: при выполнении крашится с таким то окошком. Что делать.
Окошки на самом деле разные. Нарушение прав доступа, либо ассерт какой-то сработал, либо что-то еще.
Так вот когда вылазиет такое окошко, нужно нажать на кнопку Break или Repeat. Студия перебросит вас
в код, который вызвал проблему (желтая стрелочка). Скорее всего это будет какая-то функция из студийных
исходников, трогать которые не надо. Так вот, чтобы понять, как программа пришла в эту точку
как раз пригодится стек вызовов. Вы просто поднимаетесь по нему нажимая строчку в этом стеке и студия
вас будет перебрасывать на реализацию соответствующей функции. Если эта функция ваша - смотрите
значение переменных, при которых нижележащие функции тупанули. Если проблема где-то выше - значит
поднимаетесь по стеку выше, попутно расставляя точки останова для запуска кода еще раз. На этот раз
студия уже будет останавливаться на подозрительных с вашей точки зрения участках кода и вы сможете
проконтролировать выполнение в этих точках.



маленький пример:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <iostream>
 
 
void f1(int i)
{
  int j = 10 / (i - 5);
  std::cout << j << std::endl;
}
 
void f2()
{
  for (int i = 0; i < 10; ++i)
  {
    f1(i);
  }
}
 
void f3()
{
  f2();
}
 
int main()
{
  f3();
  return 0;
}
стек вызовов будет выглядеть так:
f1
f2
f3
main
...
12
2549 / 1208 / 358
Регистрация: 30.11.2013
Сообщений: 3,826
10.04.2016, 11:11 4
Вебинар на тему: Visual Studio 2015 Tips&Tricks: новые возможности для разработчика

C 1:20:00 про отладчик Visual Studio 2015
3
10.04.2016, 11:11
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.04.2016, 11:11
Помогаю со студенческими работами здесь

Научите пользоваться Microsoft Visual Studio 2010
Обьясните как создать-написать-запустить проект в Визуале на языке С# хотя бы Hello world. Я не...

Как пользоваться отладчиком OllyDbg на файлах-ЕХЕ для Visual Basic 6.0?
Добрый вечер! Прошу научить пользоваться отладчиком OllyDbg. Имею: Windows 7, 32 Bit. Скачал...

Как открыть средства диагностики при работе с отладчиком в visual studio 2017?
Изучаю работу c++ и работу с отладкой кода в среде visual studio 2017. Справа в окне, где...

Как не вводить заново данные в программу пользуясь отладчиком после неудачи ? Visual Studio 2017
Это возможно ? Спасибо.

Как пользоваться встроенным ассемблером Visual Studio?
как пользоваться встроенным ассемблером visual studio?я создал через project - add new item -...

Не совсем понятно как пользоваться Visual studio
Я установил программу Visual Studio, но мне не совсем понятно как ей пользоваться . Мне...

Как пользоваться отладчиком?
Вот код. В книжке написано: &quot;поставьте точку останова Отладчика на оператор j=i и в цикле работы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru