c++ - C/C++实现并传递代码

标签 c++ c

<分区>

我有另一种 C 语言的解释器。我必须将代码(大约 200 行)从另一种语言传递给这个解释器,这里出现了问题。

char* command_line[] = {
    "", 
    "-e", 
    "print \"Hello from C!\\n\";"
};

此代码由以下人员解析:

(..)
    parser(my_p, NULL, 3, command_line, (char **)NULL);
(...)

在代码 abobe 中,我使用数组,但即使是简单的代码也必须在诸如 "; |\等字符之前用\包裹。

如何避免这个问题,轻松通过200多行代码?

最佳答案

如果您使用的是 C++11,则可以使用原始字符串文字。

R"(print "Hello from C!\n";)"

或者您可以简单地将所有数据放入一个外部文件中,然后在开始时读取它。无需转义那里的任何数据。

关于c++ - C/C++实现并传递代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18354029/

相关文章:

c++ - 强制调用构造函数而不是函数式转换

c - OS X 如何使用 OpenGL 上下文创建窗口

c - 使用 fgets() 时将值放入链表 header 中

c - 如何动态生成 C 类型?

C++ Qt QPixmap 加载总是返回 false

c++ - 如何在不声明C/C++附加功能的情况下对代码进行重复数据删除?

c++ - 编译器在 eax 上来回生成 mov

C++:对 'FMOD::X' 的 undefined reference

c - 启动时运行 C 程序 [Red Pitaya]

c - 结构数组奇怪的输出?