Есть ли переводчик для C? [закрытый]
Мне было интересно, есть ли что-то вроде интерпретатора для C. То есть в терминале Linux я могу ввести "python", а затем код в этом интерпретаторе. (Я не уверен, что переводчик правильное слово). Это действительно полезно для тестирования разных вещей, и мне любопытно, существует ли что-то подобное для C. Хотя я сомневаюсь в этом. Единственное, что я могу придумать, это сделать это будет оболочка C...
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
ccons появляется, чтобы удовлетворить ваши ограничения:
цель проекта ccons-создать интерактивную консоль для языка программирования C, аналогичную "python" и " irb " для Python и Ruby соответственно. Проект строится на основе clang и llvm.
вы можете использовать CompCert. Вот несколько примеров: http://compcert.inria.fr/man/manual004.html
Это было сделано, хотя подавляющее большинство работ c компилируется. Одним из примеров является CH
CERN имеет инструментарий под названием ROOT, который предназначен в основном для научного или анализа данных и т. д.. цели, но у него есть интерпретатор C/C++ на основе Clang под названием
Cling
.они использовали интерпретатор C под названием CINT прежде чем они адаптируются
Cling
. CINT легкий и по-прежнему, кажется, доступен для скачивания.Я думаю, что вы можете получить некоторые другие, тщательно просматривая список статей Википедии.