2009-07-27 6 views
7

Я ищу программу, в которой я могу ввести фрагмент кода C++ в одном окне, нажать кнопку и получить вывод в другом окне. Компиляция должна каким-то образом скрываться за кнопкой. На основе для каждого фрагмента будет отлично, полный интерактивный, возможно, слишком большой вопрос . Он должен работать под Linux/Unix. Основное использование случае будет обучения/тестирование/короткие отладки и т.д.C++ interpreter/console/snippet compiler

Похожих вещей я нашел:

- проект Reinteract для питона (который я сказал мудрец имеет признаки, подобные)

- тот же поток для C# здесь: C# Console?

- переводчик CINT из проекта ROOT CERN (который может быть близко, но, возможно, есть более удобные приложения вокруг)

- некоторые программы, называемые Quickly Compile или Code Snippet, которые являются M $.

+2

Не хороший способ обучения C++, ИМХО. То, что такая система скроет от вас, - это то, что вам действительно нужно знать и полностью понять. – 2009-07-27 18:12:22

ответ

13

http://codepad.org/ прекрасно подходит для этой цели. По умолчанию он будет запускать то, что вы вставляете, когда вы нажимаете «Отправить» и отображаете результат (или любые ошибки, которые могут возникнуть у вас).

+0

Это выглядит красиво :) Кажется, он более интерактивен после создания собственного проекта. Однако он создает новый узел после каждого изменения. Но все же очень аккуратный, особенно многоязычный. – daspostloch

0

Я хотел бы сделать это следующим образом:

  • захватить 'Snippit' как текст
  • Создать a.cpp со следующим:
int main() { 
    snippitCode(); 
    return 0; 
} 

void snippitCode() { 
    // INSERT SNIPPIT HERE 
} 
  • Используйте ' exec ', чтобы запустить компилятор и передать вывод в выходной файл.
  • Используйте «exec» для запуска приложения и вывода вывода в выходной файл.

В окне «output» вы можете запустить «tail -f» в выходном файле, чтобы постоянно обновлять, когда приходит новый выход.

+0

Weird 'code block' в элементе списка испортил код. – Kieveli

0

Просто настроить редактор кода для компиляции и запуска фрагментов кода.

Большинство редакторов кода имеют возможность «отправки» текущего буфера/файла на внешний инструмент. Я настраиваю привязку одного редактора, чтобы скомпилировать текущий буфер, и другое связывание ключей для выполнения того, что было в последний раз скомпилировано (на самом деле для запуска было то же самое базовое имя файла, что и текущий буфер с расширением «.exe»). Мой опыт работы с Windows, но то же или подобное можно сделать в Unix/Linux.

Тогда это будет одно нажатие клавиши для компиляции и другое, чтобы запустить то, что я сочинил. Это также может быть просто одним нажатием клавиши для компиляции &, но у меня есть несколько привязок клавиш, которые можно скомпилировать с использованием различных разных компиляторов. Таким образом, я могу легко протестировать фрагменты, используя последние компиляторы MSVC, MSVC 6, MinGW GCC, Comeau и Digital Mars для проверки различий.