C有翻译吗?

时间:2009-02-25 04:27:08

标签: c interpreter read-eval-print-loop

我想知道是否有类似C语言的解释器。也就是说,在Linux终端中我可以输入“python”然后在该解释器中编码。 (我不确定翻译正确的词)。这对于测试不同的东西真的很有帮助,我很好奇C是否存在类似的东西。虽然我对此表示怀疑。我唯一能想到的就是C shell ......

13 个答案:

答案 0 :(得分:72)

There are many - 如果您缩小问题的范围,我们可能会根据您的需求提出一些建议。

一位着名的翻译是Dobbs博士详述的“Ch: A C/C++ Interpreter for Script Computing”:

  

Ch是一个完整的C语言解释器   支持所有语言功能和   ISO C90的标准库   标准,但扩展C与许多   高级功能,如字符串   类型和计算数组为   一流的物品。

Ch standard is freeware但不是开源。只有Ch professional拥有绘图功能和人们可能想要的其他功能。

我以前从未看过这个,但是手头有一个c解释器听起来非常有用,而且我可能会添加到我的工具集中。谢谢你的问题!


编辑:

刚刚发现我最喜欢的编译器之一TCC将执行C脚本:

  

它还处理C脚本文件(只是   添加shebang线   “#!/ usr / local / bin / tcc -run”来了   C源代码文件的第一行   在Linux上让它直接执行。

     

TCC可以从中读取C源代码   使用' - '时的标准输入   'infile'的地方。例如:

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

答案 1 :(得分:18)

picoc - 一个非常小的C解释器

  

PicoC是一个非常小的C脚本解释器。它原来是   写作无人机飞行系统的脚本语言。   它也非常适合其他机器人,嵌入式和非嵌入式   应用

答案 2 :(得分:9)

ROOT项目提供了一个非常实用的C和C ++解释器,名为Cint。我很喜欢它。不过,它需要一点点习惯来解释。

TCC也是一个非常好的选择,但我无法保证其REPL

答案 3 :(得分:8)

可能。 c ++有几个。有关示例,请参阅Have you used any of the C++ interpreters (not compilers)?。当然cint几乎可以吃掉所有c代码并且效果很好,tcc速度很快,你可以像翻译一样使用它。

答案 4 :(得分:7)

查看Ch Interpreter

  

Ch是一个可嵌入的C / C ++解释器   对于跨平台脚本,shell   编程,2D / 3D绘图,数值   计算和嵌入式脚本。

答案 5 :(得分:6)

我知道我们在课堂上使用CINT。看起来很不错,你可能想尝试一下!

答案 6 :(得分:5)

结帐iGCC

答案 7 :(得分:4)

cinterp是一个开始。

答案 8 :(得分:3)

ccons 似乎满足您的约束条件:

  

ccons项目的目标是为C编程语言创建一个交互式控制台,分别类似于Python和Ruby的“python”和“irb”。该项目建立在clang和llvm之上。

答案 9 :(得分:2)

您可以使用CompCert。以下是一些示例:http://compcert.inria.fr/man/manual004.html

答案 10 :(得分:2)

最近有Cling(基于LLVM / Clang)

http://root.cern.ch/drupal/content/cling

答案 11 :(得分:1)

即使绝大多数C作品都是编译完成的,也已经完成了。一个例子是CH

答案 12 :(得分:0)

CERN有一个名为ROOT的工具包,主要用于科学或数据分析等目的。但它有一个基于Clang的C / C ++解释器,名为Cling

他们在调整Cling之前使用了名为 CINT 的C解释器。 CINT是轻量级的似乎仍然可以下载。

我认为你可以通过仔细搜索维基百科列表文章来获得其他一些。