Есть ли переводчик для C? [закрытый]


Мне было интересно, есть ли что-то вроде интерпретатора для C. То есть в терминале Linux я могу ввести "python", а затем код в этом интерпретаторе. (Я не уверен, что переводчик правильное слово). Это действительно полезно для тестирования разных вещей, и мне любопытно, существует ли что-то подобное для C. Хотя я сомневаюсь в этом. Единственное, что я могу придумать, это сделать это будет оболочка C...

13 112

13 ответов:

много - Если вы сузите область вашего вопроса, мы могли бы предложить некоторые конкретные для ваших нужд.

известный интерпретатор"Ch: интерпретатор C / C++ для вычисления скриптов" подробно описаны в доктор Доббс:

Ch-это полный интерпретатор C, который поддерживает все языковые функции и стандартные библиотеки ISO C90 Стандартный, но расширяет C со многими высокоуровневые функции, такие как строка тип и вычислительные массивы в виде первоклассные объекты.

стандарт Ch является бесплатным но не с открытым исходным кодом. Только Ch professional имеет возможности построения графиков и другие функции, которые могут потребоваться.

Я никогда не смотрел на это раньше, но наличие интерпретатора c под рукой звучит очень полезно, и что-то я, вероятно, добавлю в свой набор инструментов. Спасибо за вопрос!


Edit:

только что узнал, что один из моих любимых компиляторы,TCC, будет выполнять C скрипт:

Он также обрабатывает файлы сценариев C (просто добавить строку притон "#!/usr / local/bin/tcc-run" к первая строка файла с исходным кодом на Linux, чтобы он выполнялся напрямую.

TCC может читать исходный код C стандартный ввод '-' используется в место 'infile'. Пример:

echo 'main(){puts("hello");}' | tcc -run -

picoc - очень маленький переводчик C

PicoC-это очень маленький интерпретатор C для сценариев. Это было первоначально написанный как язык сценария для бортовой системы полета БПЛА. Он также очень подходит для других роботизированных, встроенных и не встроенных приложения.

корневой проект предоставляет очень функциональный интерпретатор C и c++ под названием Cint. Мне это очень нравится. Правда, к этому нужно немного привыкнуть.

TCC-очень хороший выбор, но я не могу поручиться за его REPL

наверное. Есть несколько для c++. Смотрите вы использовали какие-либо интерпретаторы C++ (не компиляторы)? для примера. Конечно cint будет есть почти любой код c с хорошими результатами, и tcc настолько быстро, что вы можете использовать его как переводчика.

до Переводчик Ч.

Ch-это встраиваемый интерпретатор C / C++ для кросс-платформенных сценариев оболочки Программирование, 2D и 3D графики, численные вычисления и встроенные скрипты.

Я знаю, что мы используем CINT в классе. Это казалось довольно хорошо, вы можете дать ему попробовать!

Проверить iGCC

cinterp один для начала.

ccons появляется, чтобы удовлетворить ваши ограничения:

цель проекта ccons-создать интерактивную консоль для языка программирования C, аналогичную "python" и " irb " для Python и Ruby соответственно. Проект строится на основе clang и llvm.

совсем недавно есть 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 легкий и по-прежнему, кажется, доступен для скачивания.

Я думаю, что вы можете получить некоторые другие, тщательно просматривая список статей Википедии.