相关疑难解决方法(0)

C有翻译吗?

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

c interpreter read-eval-print-loop

111
推荐指数
7
解决办法
7万
查看次数

是否有等效于Eval的C/C++("function(arg1,arg2)")?

它需要一种方法来调用函数,其名称存储在类似于eval的字符串中.你能帮我吗?

c++ eval

23
推荐指数
4
解决办法
3万
查看次数

图书馆dl在gcc中的意义

我正在检查一个makefile,看到使用的库是:

LIBS = -lcppunit -ldl
Run Code Online (Sandbox Code Playgroud)

lcppunit是单元测试库.那是什么ldl

c++ linux dynamic-library

15
推荐指数
3
解决办法
2万
查看次数

您可以动态编译 C 代码并将其链接/加载到 C 程序中吗?

我读过C 中的 eval,如果您编写 C 字符串解析器/评估器,则可以将其映射到主 C 程序中的特定函数。但据我所知,它实际上并没有将它放入可执行内存中,就像JIT 编译器似乎所做的那样。我不完全理解 JIT 编译器(我从来没有做过),但我明白了要点。

所以我想知道的是,您是否可以在 C 中创建某种 JIT 编译器,而无需做太多解析 C 字符串和转换为 AST 之类的工作。基本上,您能否像在 JavaScript 中那样动态创建一个函数(在 C 中),以便该函数与任何其他 C 函数完全相同(即,它在程序的可执行部分中直接编译为可执行的机器代码)事物)。

如果不可能这样做,第二种方法是动态加载 C 导入/文件/模块。因此,您衍生出一个进程,该进程告诉 clang 编译器编译一些库函数,完成后,在不停止当前程序的情况下,它将新程序库链接/附加到自身,因此可以以这种方式执行代码.

如果这是不可能的,也许一个选择是简单地在后台重新编译程序,然后将当前程序与从头启动的新程序交换。但这将是非常原始的。

试图弄清楚您是否在 C 中有一些用于您自己的自定义函数数据类型的结构,然后如何以最优化的方式在 C 中执行该函数。

c jit

4
推荐指数
1
解决办法
1255
查看次数

标签 统计

c ×2

c++ ×2

dynamic-library ×1

eval ×1

interpreter ×1

jit ×1

linux ×1

read-eval-print-loop ×1