Страница 1 из 1

Начал изучать FreePascal и споткнулся на первом же шаге

СообщениеДобавлено: 14.04.2016 16:56:09
ХочуВсеЗнать
Дочери на Информатике рекомендовали писать программы на FreePascal - скачал, установил, скопипастил классику "hello, world!" из статьи на этом сайте

Код: Выделить всё
program hello;
begin
  writeln('Hello,world!');
end.

Компилируется успешно, cкомпилированный test.exe в cmd-окне показывает надпись, а в окне отладки - пусто :(

А должно быть как на картинке из статьи ->
Изображение

Гуглил, Яндексил, искал и на этом форуме, но ответа не нашёл

Файл test.pas находится в корне диска C: , Windows XP 32 бита

Re: Начал изучать FreePascal и споткнулся на первом же шаге

СообщениеДобавлено: 14.04.2016 17:09:28
SSerge
На "картинке из статьи" представлен вывод ископаемой древней версии компилятора и среды исполнения, к тому же запущенной из под cygwin (это такая программная имитация unix под windows). Ну да, поведение слегка изменилось. А чему это препятствует?

Re: Начал изучать FreePascal и споткнулся на первом же шаге

СообщениеДобавлено: 14.04.2016 17:21:44
ХочуВсеЗнать
Но на вложенной картинке свежескачанная версия :)
Она не должна реагировать на writeln? А зачем тогда нужен запуск по Alt+F5, если в итоге ничего не происходит?

Для дочки это будет первая программная среда и мне надо как-то популярно ей объяснить, как этим всем пользоваться - отладка, просмотр значений переменных, а я споткнулся уже на том, что не выводится тест в окно :( Хотя, по логике, вроде должен выводиться...

Re: Начал изучать FreePascal и споткнулся на первом же шаге

СообщениеДобавлено: 14.04.2016 17:50:07
Лекс Айрин
ХочуВсеЗнать, расслабьтесь. Отладчик так плохо работает, что лично я его отключаю совсем и использую методы отладки использующие тестовый вывод на консоль (во всплывающие окна).
И, кстати, странно использовать cygwin -- легче использовать "кошерную" сборку. Лично у меня в ней все нормально.
ХочуВсеЗнать писал(а):А зачем тогда нужен запуск по Alt+F5, если в итоге ничего не происходит?


Чтобы просто просмотреть содержимое командной строки не запуская вторую сессию cmd.

Re: Начал изучать FreePascal и споткнулся на первом же шаге

СообщениеДобавлено: 14.04.2016 17:50:33
SSerge
Она у вас нормально отреагировала на writeln: текст то на экран выведен. У вас два экрана: консоль компилятора и консоль исполняемой программы.
Вот в консоль исполняемой программы все и выведено.
После чего программа завершилась. Если хотите, чтобы программа тормознулась после вывода "Hello world", текст должен быть таким:
Код: Выделить всё
program hello;
begin
  writeln('Hello,world!');
  readln;
end.


Добавлено спустя 1 минуту 47 секунд:
Лекс Айрин писал(а):И, кстати, странно использовать cygwin


это автор статьи-образца использует cygwin, как я понимаю

Добавлено спустя 4 минуты 23 секунды:
ХочуВсеЗнать писал(а):А зачем тогда нужен запуск по Alt+F5, если в итоге ничего не происходит


Чтобы что-то происходило, надо чтобы точка останова (breakpoint) была определена в IDE (редакторе).
Тогда исполнение на этой точке остановится (теоретически).
А раз точки останова нет, запуск под отладчиком ничем не будет отличаться от обычного исполнения

Re: Начал изучать FreePascal и споткнулся на первом же шаге

СообщениеДобавлено: 14.04.2016 18:15:37
Лекс Айрин
SSerge писал(а):это автор статьи-образца использует cygwin, как я понимаю


о да... тут я лоханулся ((

SSerge писал(а):Чтобы что-то происходило, надо чтобы точка останова (breakpoint) была определена в IDE (редакторе).


Судя по всему, ему нужна строка типа
Код: Выделить всё
Running "c:\documents and settings\admin\test.exe "

в fp-ide при запуске, у меня она отображается.. Но консоль, кстати, одна.