C++ 如何从记事本文件中取出数据并将其放入用户定义的函数中?

C++ 如何从记事本文件中取出数据并将其放入用户定义的函数中?,c++,file-io,user-defined-functions,C++,File Io,User Defined Functions,我的教授给我们布置了一个作业,我们必须要带一个数据文件,里面有一家电话公司的信息,并且要我们记下通话记录并找出最终的费用。我很确定我的功能还可以,但他没有真正解释如何从数据文件中提取信息。(他的例子很简单) 文件中的列分别表示电话号码、公司代码、本地分钟数和长途分钟数。这是我在函数中设置参数的顺序 我的代码: int main() { int pNumber; char company; int localMin; int longMin; ifstr

我的教授给我们布置了一个作业,我们必须要带一个数据文件,里面有一家电话公司的信息,并且要我们记下通话记录并找出最终的费用。我很确定我的功能还可以,但他没有真正解释如何从数据文件中提取信息。(他的例子很简单)

文件中的列分别表示电话号码、公司代码、本地分钟数和长途分钟数。这是我在函数中设置参数的顺序

我的代码:

int main()
{

    int pNumber;
    char company;
    int localMin;
    int longMin;

    ifstream infile;
    ofstream outfile;

    infile.open("e:/C++/Lab Assignments/Lab 6/phoneData.dat");
    outfile.open("e:/C++/Lab Assignments/Lab 6/companyComparison.bat");

    while(!infile.eof())
    {
        if(pNumber > 111000)
            **infile >> companyA(int pNumber, char company, int localMin, int longMin); **
    }

    infile.close("e:/C++/Lab Assignments/Lab 6/phoneData.dat");
    outfile.close("e:/C++/Lab Assignments/Lab 6/companyComparison.bat");
    system("pause");
    return 0;
}
我在主函数的while循环中遇到错误。我在有问题的代码行周围放了两个星号。我只是不知道如何解决这个问题。

您不需要将数据“放置”到函数中,而是传递它们。这就是函数参数的用途。除此之外,

companyA(int pNumber, char company, int localMin, int longMin);
是一个函数声明,在这里根本没有位置

以下是使用您声明的变量但不使用的已编辑代码:


此外,
std::basic_fstream
没有接受某些参数(路径)的
close
。请在课堂上观看并注意。

欢迎来到SO!请将代码片段组装成一个完整的文件。几乎没有人会喜欢在帮你写作业代码之前先解决一个代码难题。“记事本文件”难道不是一个普通的文本文件吗?@Namit如果回答了你的问题,请随意接受答案。
infle>>companyA(…)
没有意义。不应该只是函数调用吗?
// read to intermediate variables
while(infile >> pNumber >> company >> localMin >> longMin) 
{
    if(pNumber > 111000)
        // just call the function, passing intermediate variables
        companyA(pNumber, company, localMin, longMin);
}