c - 从文件中读取代码

标签 c file-io

首先我要说的是,我对 C 语言的经验非常少。

我想让 C 从外部文件读取代码,例如:

switch(status)
{
    case 0:
    {
        read from /path/file1
    break;
    }
    case 1:
    {
        read from /path/file2
    break;
    }
    case 2:
    {
        read from /path/file3
    break;
    } 
}

(伪)文件 1-3 中可能包含哪种代码的示例:

if((this & that) && !(other & another))
    {code;more code;}
else if(!(this & that) && (other & another))
    {code;more code;}

我应该在“从/path/file1读取”处放置什么代码才能将代码读取为代码而不是字符串?

编辑:我的目标是编译后能够编辑“file1,file2,file3”。我正在编辑Linux非官方“g15”驱动程序的源代码,因为“g15macro”(编辑宏键的软件)不适​​合我,所以我一直将宏硬编码到驱动程序中。我想让事情对我来说更容易,这样我就不必每次想要编辑宏时都重新编译。 (Gnome 15 是一个比 g15daemon 更新的项目,它也不适合我;我用它得到了输入延迟)

最佳答案

如果你想在可执行文件中进行选择并根据选择执行,那么你可以在Linux环境中使用system()

 system("path to executable")

如果您想编辑然后执行,一种方法是编辑源文件。然后在主程序中编译它,然后执行新编译的可执行代码。 可以通过在程序中的system()内部编写一系列命令来完成。

 case 0: edit /path/file1
        system("gcc -o file1 /path/file1")
        system("/path/file1")

关于c - 从文件中读取代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21579416/

相关文章:

c - 我无法理解 MIPS 问题中的部分代码

java - 从内部存储读取和写入

c++ - 这些哪个更快?

c - 混合使用 Objective-C 和 C 有哪些陷阱?

java - 从返回 null 的源文件夹加载图像

c - 文件是怎么写的?为什么我没有看到我的数据立即写入?

java - 基于大文件中的字符串求和权重

c# - 启动时打开文件

C:程序在尝试释放 2D 数组本身时崩溃

c - 使用 void*、void ** 和可变参数函数