我在想是否有类似于C语言解释器的工具。也就是说,在Linux终端中,我可以输入“python”,然后在解释器中编写代码。这对于测试不同的东西非常有帮助,我很好奇是否存在类似于C语言的工具。虽然我表示怀疑。唯一我能想到的可能是C shell...
我在想是否有类似于C语言解释器的工具。也就是说,在Linux终端中,我可以输入“python”,然后在解释器中编写代码。这对于测试不同的东西非常有帮助,我很好奇是否存在类似于C语言的工具。虽然我表示怀疑。唯一我能想到的可能是C shell...
有很多 - 如果你缩小问题的范围,我们可能能够推荐一些符合你需求的特定解释器。
一个著名的解释器是《Ch: A C/C++ Interpreter for Script Computing》在Dr. Dobbs中详细介绍:
Ch是一个完整的C解释器,支持ISO C90标准的所有语言特性和标准库,但通过许多高级特性(例如字符串类型和计算数组作为一等对象)扩展了C。
Ch标准版是免费软件,但不是开源软件。只有Ch专业版具有绘图功能和其他一些功能。
我以前从未看过这个,但是随时拥有C解释器听起来非常有用,我很可能会将其添加到我的工具集中。谢谢你的问题!
编辑:
刚刚发现我的最爱编译器之一TCC可以执行C脚本:
它还可以处理C脚本文件(只需将shebang行“#!/usr/local/bin/tcc -run”添加到Linux上的C源代码文件的第一行即可直接执行)。
当使用“-”代替“infile”时,TCC可以从标准输入读取C源代码。例如:
echo 'main(){puts("hello");}' | tcc -run -
tcc
退出状态为10
。看起来你必须显式地添加一个return 0
,例如echo 'main(){puts("hello"); return 0;}' | tcc -run -
。 - Greg NisbetPicoc - 一个非常小巧的C语言解释器。
PicoC是一个用于脚本编写的非常小巧的C语言解释器。最初它被编写作为一种用于飞行系统的无人机脚本语言。它也非常适合其他机器人、嵌入式和非嵌入式应用。
ROOT项目提供了一个非常功能强大的C和C++解释器,名为Cint。我非常喜欢它。不过需要一点时间来适应其解释性操作。
TCC也是一个非常好的选择,但我无法保证它的REPL。
可能有几个适用于c++的解释器。请参阅Have you used any of the C++ interpreters (not compilers)?了解示例。当然,cint将以良好的结果执行几乎任何c代码,并且tcc非常快速,您可以像使用解释器一样使用它。
我知道我们在课堂上使用CINT。它似乎很好,你可以尝试一下!
cinterp
是一个很好的开始。
ccons 似乎符合您的要求:
ccons 项目旨在为 C 编程语言创建一个交互式控制台,类似于 Python 和 Ruby 的 "python" 和 "irb"。该项目基于 clang 和 llvm 构建。