0

我目前正在为类运行命令行输入程序,该程序从命令行参数中提取数据,将其粘贴在ifstream中,然后通过引用一个函数将其传递给我必须从文件中提取信息的函数。

首先,我明白这一点”

ifstream coursesIn (argv[1]);

将我的输入文件名放入 ifstream 类型的 courseIn 变量中。从这里,我可以执行诸如 .open(argv[1]); 之类的操作。为了提取必要的数据。

接下来是我要将变量传递给一个名为 processEnrollments(coursesIn) 的函数

其原型如下:

processEnrollments (std::istream& courseFile);

一旦我将变量放入函数中并在函数中,我的教授提供了以下代码:

void processEnrollments (istream& courseFile, istream& enrollmentRequestsFile,
         ostream& reportFile)
{
int numCourses;
courseFile >> numCourses;

// Create the arrays we need
//!! Insert your code here
}

首先,我不知道他想对函数内的前两行做什么,其次,我不能再执行我的 .open(argv[1]) 方法来从文件名中提取数据。

在功能之外我相信我可以得到我需要的一切,但是通过后,我很茫然。

感谢您提供的任何帮助!

4

1 回答 1

0

您确实需要阅读有关流的更多信息。

宣言

ifstream coursesIn (argv[1]);

创建一个变量coursesIn,只要您是对的,但它也会使用 .提供的文件名打开argv[1]文件。如果你喜欢这个,你以后就不需要了open

至于函数,它的第一行声明了一个整数变量,第二行从文件中读取一个整数courseFile并将其存储在numCourses变量中。

最后,请记住所有输入流具有相同的基数,因此如果您可以从例如读取输入,cin您也可以从文件中读取输入。

于 2013-01-30T13:57:27.160 回答