【发布时间】:2012-04-24 09:50:40
【问题描述】:
我希望能够在 C/C++ 中执行以下操作(如果可能的话)。
我有一个这样的文件:
初始变量.txt
a = 5
b = 2
c = 8
代码如下:
int main(int argc char *argv[])
{
int a;
int b;
int c;
LoadInitialVariables("Initialvariables.txt");
}
其中 a、b、c 是变量,文件“Initialvariables.txt”包含编译后可以更改的初始值。
是否可以创建 LoadInitialVariables,这样如果一个新人来更改代码,他们可以简单地添加一个新的 int 并在“initialvariables.txt”中添加一个新行,然后代码将完成其余的设置来设置初始变量?
目的不是硬编码钩子,而是使 LoadInitialVariables 尽可能通用。
对我来说,困难似乎来自编译器剥离符号的事实,因此可执行文件将不知道什么是, b, c 等是没有适当的钩子的。如果可能的话,我宁愿不必指定钩子(除非它只是简单地装饰 int)。
【问题讨论】:
-
如果你可以让你的文件只是数字,那么很容易将它们读入并将它们存储到一个向量中并返回它。没有数字,同样的原则也适用,但你必须绕过文件中的其他文本。