Форум программистов, компьютерный форум, киберфорум
Visual Studio, VS Code
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/1223: Рейтинг темы: голосов - 1223, средняя оценка - 4.62
Модератор
Эксперт С++
 Аватар для zss
13773 / 10966 / 6491
Регистрация: 18.12.2011
Сообщений: 29,244

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

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

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

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

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

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

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


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

Дополнительно можете обратиться к микрософтовскому руководству - Отладка в Visual Studio
35
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
25.09.2014, 09:12
Ответы с готовыми решениями:

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

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

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

3
30.09.2014, 20:48
 Комментарий модератора 
Эта тема открыта для добавления информации.
Если вы желаете обсудить данную тему, внести поправки или замечания - просьба писать вот в эту тему: https://www.cyberforum.ru/faq/thread1766346.html
Если у вас возник вопрос по отладке в Visual Studio, создайте новую тему в данном разделе.
0
DU
1500 / 1146 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
04.02.2015, 22:52
добавлю инфу про такую фичу как 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
Вебинар на тему: Visual Studio 2015 Tips&Tricks: новые возможности для разработчика

C 1:20:00 про отладчик Visual Studio 2015
3
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.04.2016, 11:11
Помогаю со студенческими работами здесь

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

Научите пользоваться 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
Это возможно ? Спасибо.


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru