C++ 从文件中读取数字和未赋值语句

C++ 从文件中读取数字和未赋值语句,c++,file-io,input,output,C++,File Io,Input,Output,我有一个构建某些形状的通用文件,我想在下面几行中阅读: 0 0 1 0 x(r) y(r) 其中,x和y是r的函数,它是作为main参数引入的变量,例如2*r-4 然后我需要将列向下读入数组 对于仅包含数字的列,可以执行以下操作: file >> x[j]; 但是,我不确定如何将表达式读入程序,然后进行求值,然后作为数字放入数组中 我在阅读不同类型条目的列时遇到问题。理想情况下,我希望每个人的分配方式如下: temp[0]=1; temp[1]=2*r-

我有一个构建某些形状的通用文件,我想在下面几行中阅读:

0    0      1
0    x(r)   y(r)
其中,
x
y
r
的函数,它是作为main参数引入的变量,例如
2*r-4

然后我需要将列向下读入数组

对于仅包含数字的列,可以执行以下操作:

file >> x[j];
但是,我不确定如何将表达式读入程序,然后进行求值,然后作为数字放入数组中

我在阅读不同类型条目的列时遇到问题。理想情况下,我希望每个人的分配方式如下:

temp[0]=1;
temp[1]=2*r-4;
但我不知道如何做到这一点


(我不确定函数
fscanf
是否有效?

您可以使用
file.getline(someString,maxLength)
读取整行内容。然后您可以拆分字符串,这样就有了
x(r)
y(r)
的字符串。这些字符串需要解析为数学表达式。这个问题提供了有关c++主题的良好信息:

您可以将所有行解释为std::function,其中常量只是lamda函数
[x](int r){return x}