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

Пишем свой интерпретатор языка BASIC - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Меню и список http://www.cyberforum.ru/cpp-beginners/thread41194.html
Здравствуйте форумчане. Помоги пожалуйста в следующем вопросе: У меня есть 2связный список, написано меню. Но в моменте когда написано make a list и delete custom необходимо чтобы выводились:...
C++ Здравствуйте! Не могу поместить class в один файл с программой. file.hpp #include "Cat.hpp" // здесь классы "2)" Cat::Cat(int initialAge) { itsAge = initialAge; } Cat::~Cat() { http://www.cyberforum.ru/cpp-beginners/thread41186.html
Массивы строк C++
Привет всем! Задан массив строк. Как узнать который символ встечаетса найбольшое количество раз в етом массиве?
C++ вывод на экран набор треугольников и квадратов, которые произвольно двигаются и меняют размер
Please, help me!!! Вот текст программы, которая выводит на экран набор треугольников и квадратов, которые произвольно двигаются и меняют размер только квадратов. Проблема в том, что необходимо...
C++ Округление дробного числа до целого в большую сторону. http://www.cyberforum.ru/cpp-beginners/thread41139.html
Доброго дня. Я новичок в программирование на Visual C++. Проблема такая программа должна считать кол-во месяцев, если числа целые то программа шла дальше, если дробное то (например 3.33333) ...
C++ Код из Delphi в C++ Нужно написать курсовую на C++. Сам я в программировании плохо шарю (не программист). Попросил у народу помощи, помогли. Но решение на Delphi: {$APPTYPE CONSOLE} type byteset=set of byte; ... подробнее

Показать сообщение отдельно
Evg
Эксперт CАвтор FAQ
17955 / 6186 / 415
Регистрация: 30.03.2009
Сообщений: 16,977
Записей в блоге: 27
26.12.2009, 19:04
В случае компилятора отладчик возможно делать внешним, потому как по результату работы компилятора генерится независимый (от компилятора) исполняемый файл. В этот файл складывается отладочная информация, по которой отладчик может найти соотвествие между кодом (данными) и текстом исходной программы.

В случае интерпретатора отладчик может быть только встроенным, потому как независимо выполнять программу нет возможности. Как это выглядит внешне - могу попробовать расписать. Но вот вопрос - вы когда-нибудь работали с отладчиком gdb? Внешне должно выглядеть точно так же. За счёт того, что отладчик встроен в интерпретатор, то снимается более 90% геморроя, связанного с отладкой независимого приложения

Добавлено через 9 минут
В кратце выглядит примерно так. Запускается интерпретатор со специальной опцией, по которой интерпретатор начинает работать в интерактивном режиме. Т.е. он ожидает ввода команд с консоли. Пользователь пишет в управляющей консоли "break source.bas:30", что означет поставить брейкпоинт в файле source.bas в строке 30. Далее пользователь пишет "run", что означает запуск программы. По достижении указанного места интерпретатор перестаёт исполнять программу и опять ожидает ввода. Пользователь пишет "print A", интерпретатор распечатывает значение переменной "A". Ползтватель пишет "next", интерпретатор исполняет один оператор и опять вываливается в командную строку. И т.п. IDE должна делать по большому счёту то же самое. Когда пользователь жмёт мышкой на какую-то строку, то IDE должна отправить в интерпретатор команду "break ...". Когда пользователь жмёт правой кнопкой мышки над именем переменной и выбирает "Распечатать значение", то IDE отправляет интерпреатору приказ "print ..." и перехватывает результат. По такому же принципу работают все графические отладчики: есть некий низкоуровневый отладчик, а повер него строится графическая оболочка
2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru