gpt4 book ai didi

c - 将字符串转换为代码?

转载 作者:太空宇宙 更新时间:2023-11-04 02:13:20 25 4
gpt4 key购买 nike

假设我有一个包含一些 C 代码的字符串,可以预见地从一个文件中读取,该文件中除了正常的 C 代码之外还有其他内容。我如何将此字符串转换为程序可用的代码?我是否必须编写一个完整的解释器,或者是否有一个图书馆已经为我做了这个?有问题的代码可能会调用我在实际 C 文件中声明的子例程,因此仅说明常用 C 命令的子例程可能不起作用。

最佳答案

哇哦。对于 C,这实际上非常困难。

你基本上有几个选择:

解释代码

为此,您必须编写一个解释器,而解释 C 是一个相当困难的问题。过去有可用的 C 解释器,但我最近没有读到过。在任何情况下,除非您真的需要它,否则编写您自己的解释器是一个项目。

Googling确实显示了几个开源(部分)C 解释器,如 picoc

编译并动态加载

如果您可以捕获代码并将其包装成语法完整的 C 源文件,那么您可以将其编译成 C 动态可加载库:Windows 中的 DLL,或更多 UNIX 变体中的 .so。然后您可以在运行时加载结果。

现在,通常会导致某人这样做的是需要能够表达一些复杂的脚本功能。您是否考虑过使用不同语言的可能性? Python、Scheme (guile) 和 Lua 很容易作为脚本语言添加到 C 应用程序中。

关于c - 将字符串转换为代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10791050/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com