Мне было интересно, есть ли что-то вроде интерпретатора для C. То есть в терминале Linux я могу ввести «python», а затем кодировать в этом интерпретаторе. (Я не уверен, что переводчик правильное слово). Это действительно полезно для тестирования разных вещей, и мне любопытно, существует ли что-то подобное для C. Хотя я сомневаюсь в этом. Единственное, что я могу придумать, это оболочка C ...
111
Ответы:
Их много - если вы сузите круг вопросов, мы сможем предложить некоторые из них, отвечающие вашим потребностям.
Известный интерпретатор - « Ch: AC / C ++ Interpreter for Script Computing », подробно описанный в Dr. Dobbs:
Стандарт Ch является бесплатным, но не с открытым исходным кодом. Только Ch professional имеет возможности построения графиков и другие функции, которые могут понадобиться.
Я никогда раньше не смотрел на это, но наличие интерпретатора ac под рукой звучит очень полезно, и я, вероятно, добавлю кое-что в свой набор инструментов. Спасибо за вопрос!
Редактировать:
Только что выяснил, что один из моих любимых компиляторов, TCC , будет выполнять сценарии C:
источник
tcc
выходит со статусом10
. Похоже, вы должны явно добавитьreturn 0
пожертвованиеecho 'main(){puts("hello"); return 0;}' | tcc -run -
picoc - очень маленький интерпретатор C
источник
проект ROOT предоставляет очень функциональный интерпретатор C и C ++ под названием Cint . Мне это очень нравится. Тем не менее, нужно немного привыкнуть к интерпретации.
TCC - тоже очень хороший выбор, но я не могу поручиться за его REPL
источник
Наверное. Для c ++ их несколько. См. Использовали ли вы какие-либо интерпретаторы C ++ (не компиляторы)? Например. Конечно, cint съест почти любой код c с хорошими результатами, а tcc настолько быстр, что вы можете использовать его как интерпретатор.
источник
Посмотрите на Ch Interpreter .
источник
Я знаю, что мы используем CINT в классе. Выглядело неплохо, вы можете попробовать!
источник
Проверить iGCC
источник
cinterp
это один для начала.источник
ccons, похоже, удовлетворяет вашим ограничениям:
источник
Совсем недавно появился Cling (на основе LLVM / Clang)
http://root.cern.ch/drupal/content/cling
источник
Вы можете использовать CompCert. Вот несколько примеров: http://compcert.inria.fr/man/manual004.html
источник
Это было сделано, даже несмотря на то, что большая часть работы на C скомпилирована. Один из примеров - CH
источник
В CERN есть инструментарий ROOT, который предназначен в основном для научных целей, анализа данных и т. Д., Но у него есть вызываемый интерпретатор C / C ++ на основе Clang
Cling
.Они использовали интерпретатор C под названием CINT, прежде чем адаптироваться
Cling
. CINT легок и, похоже, все еще доступен для загрузки.Я думаю, вы можете получить что-то другое, внимательно просматривая статьи списка Википедии.
источник