Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
TheMachinist
244 / 176 / 15
Регистрация: 14.06.2010
Сообщений: 422
#1

Отладчик - C++

09.09.2010, 17:13. Просмотров 1080. Ответов 3
Метки нет (Все метки)

Здравствуйте.
Я новичок в С ++, раньше немного Basic-ом занимался. Рассматриваю главу учебника посвященную отладчику:
Создается решение, в нем два не связанных между собой проекта - Hello world и еще один подобный. Производится компоновка F7 (не понимаю зачем) .
Внизу в окне output последняя строчка должна быть
========== Build: 2 succeeded, 0 failed, 0 up-to-date, 0 skipped ========== (по книжке)
а у меня
========== Build: 1 succeeded, 0 failed, 1 up-to-date, 0 skipped ==========

и вообще у меня тут многое выходит не как в книжке.

Главно что не могу понять - зачем это все...

До этого я просто писал код, нажимал F5 - и программа работает если нет ошибок. Так же есть .exe файл.
Сообщения об ошибках и так понимаю, хотя многие сообщения больше вводят в заблуждение....
Может пропустить этот урок? Как то обходился раньше без этого.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.09.2010, 17:13
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Отладчик (C++):

Отладчик - C++
Установила новый CodeBloks. После написания программы хочу запустить отладчик. Ставлю breakpoint. После запуска появляется окно вроде...

Отладчик - C++
При запуске уже существующей программы отладчик постоянно стоит в позиции "Присоединение". Как поменять позицию отладчика на "локальный...

Отладчик пропускает else if - C++
Здравствуйте, есть значит такая связка if else if (error_ip == 'n') { int ip_int_connect_1 = string_to_int(ip_connect_1_func); ...

Не работает отладчик - C++
Добрый вечер! :) Пытаюсь начать работу с NetBeans. Все установила, компилятор работает, но при запуске отладчика выдает ошибку:...

Отладчик и epoll_wait - C++
Не знаю куда писать, так что спрошу здесь. Система - Дебиан, IDE - QtCreator. Имеется простенький код который с помощью epoll_wait ждет...

Отладчик в Dev-C++ - C++
Как включить отладчик чтоб посмотреть промежуточные значение? А то написал небольшую программку о результат не тот что надо

3
fasked
Эксперт С++
4948 / 2528 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
09.09.2010, 17:24 #2
Цитата Сообщение от NikolaWhite Посмотреть сообщение
Производится компоновка F7 (не понимаю зачем) .
Процесс компиляции в простейшем случае можно разбить на несколько этапов:
- Обработка исходного текста препроцессором. На этом этапе производится некоторое редактирование исходного текста. Например, удаляются комментарии, происходит подстановка содержимого макросов в исходной текст, проихводится вставка файлов (директива include)
- Создание объектных файлов. Объектный файл - это файл, уже переведенный в машинные инструкции. Но в этом файле содержаться ссылки на внешние функции, поэтому отдельно такой объектный файл работать не может. Сделано для того, чтобы можно было пользоваться раздельной компиляцией.
- Создание исполняемого файла. На этом этапе все объектные файлы как бы "объединяются". Это и называется компоновка.
Цитата Сообщение от NikolaWhite Посмотреть сообщение
Внизу в окне output последняя строчка должна быть
Видимо потому что у Вас только один проект, а в примере говорится о двух.
Цитата Сообщение от NikolaWhite Посмотреть сообщение
Главно что не могу понять - зачем это все...
Без хотя бы примерного понимания того, как происходит процесс компиляции сложно вообще понять, что такое программа. Как она строится, как работает. Как управлять построением конечного исполняемого файла, в конце концов.
Цитата Сообщение от NikolaWhite Посмотреть сообщение
Сообщения об ошибках и так понимаю, хотя многие сообщения больше вводят в заблуждение....
Почаще обращайтесь к руководству компилятора.
Цитата Сообщение от NikolaWhite Посмотреть сообщение
Может пропустить этот урок?
Ни в коем случае! Я бы наоборот посоветовал Вас побольше почитать литературы на эту тему.

Только вот причем здесь отладчик?
0
TheMachinist
244 / 176 / 15
Регистрация: 14.06.2010
Сообщений: 422
09.09.2010, 17:42  [ТС] #3
Процесс компиляции в простейшем случае можно разбить на несколько этапов:
- Обработка исходного текста препроцессором. На этом этапе производится некоторое редактирование исходного текста. Например, удаляются комментарии, происходит подстановка содержимого макросов в исходной текст, проихводится вставка файлов (директива include)
- Создание объектных файлов. Объектный файл - это файл, уже переведенный в машинные инструкции. Но в этом файле содержаться ссылки на внешние функции, поэтому отдельно такой объектный файл работать не может. Сделано для того, чтобы можно было пользоваться раздельной компиляцией.
- Создание исполняемого файла. На этом этапе все объектные файлы как бы "объединяются". Это и называется компоновка.
Спасибо , я это читал.

Видимо потому что у Вас только один проект, а в примере говорится о двух.
Проектов у нас тоже два, в точности как в примере.

Только вот причем здесь отладчик?
Я привел начало главы.Дальше идет поиск ошибок breakpoints и т.п. До сих пор обходился : запускаю
прогламму, если выдает ошибки - нахожу по номеру строки и содержанию сообщения, и исправляю.

Создание исполняемого файла. На этом этапе все объектные файлы как бы "объединяются". Это и называется компоновка.
Я просто нажимаю F5 и получаю исполняемый файл который прекрасно работает ....
0
fasked
Эксперт С++
4948 / 2528 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
09.09.2010, 17:46 #4
Цитата Сообщение от NikolaWhite Посмотреть сообщение
Проектов у нас тоже два, в точности как в примере.
Значит в опциях solution установлена сборка только одного проекта.
Цитата Сообщение от NikolaWhite Посмотреть сообщение
Я привел начало главы.Дальше идет поиск ошибок breakpoints и т.п. До сих пор обходился : запускаю
прогламму, если выдает ошибки - нахожу по номеру строки и содержанию сообщения, и исправляю.
Это если ошибка синтаксическая. А если ошибка логическая, то врядли компилятор Вам на нее укажет.

Цитата Сообщение от NikolaWhite Посмотреть сообщение
Я просто нажимаю F5 и получаю исполняемый файл который прекрасно работает ....
Вообще это все зависит от конкретной среды разработки. Попробуйте воспользоваться консольным интерфейсом компилятора для лучшего понимания процесса сборки.
1
09.09.2010, 17:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.09.2010, 17:46
Привет! Вот еще темы с ответами:

отладчик и динамический массив - C++
Здравствуйте. Объясните почему при создании динамического массива, отладчик (а точнее окно "контрольные значения") видит только один первый...

Отладчик MCVS 2012 - C++
Добрый день! Начал читать Создание эффективных вин32 приложений Рихтер. В первой главе рассматривается обработчик ошибок. Авто пишет что...

Работа с отладчик CodeView - C++
В общем, начал изучать ассемблер по дневникам чайника там используется отладчик CodeView.В его каталог нужно занести файл но я не могу...

Отладчик и вызов деструкторов - C++
Всем привет. Как в отладчике посмотреть, были ли вызваны деструкторы локальных объектов функции?


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru