C ++文件输入,流和编译

时间:2014-03-11 00:49:30

标签: c++ visual-c++ file-io iostream

所以问题是当我试图关闭文件流时,我收到错误C3867(至少那是我希望我正在做的事情)。目的是使一个程序使用一个输入文件将值读入一个数组,然后从那里确定数组的最高和最低数字是什么。 arraySize可以是少于或多于10个数据项,我们必须在从文件读取数据之前检查文件是否有打开错误,并在完成将元素读入数组后关闭文件。这个我以后可以做,但无论如何它都是一个指令。

#include <stdafx.h>
#include <iostream>
#include <fstream>
#include <string>
using namespace std;

int main(){
    const int arraySize = 10;
    float numbers[arraySize];
    int count = 0;
    string fileName;
    float high, low;

    fstream inputFile(fileName, ios::in);

    cout << "What is the filename you wish to use? ";
    cin >> fileName;

    inputFile.open(fileName);
    while (count < arraySize && inputFile >> numbers[count])
        count++;
    inputFile.close;

    high = numbers[0];
    low = numbers[0];

    for (int i = 0; i < arraySize; i++){
        if (numbers[i] > high)
            high = numbers[i];
        if (numbers[i] < low)
            low = numbers[i];
    }

    cout << "The highest number in the file is: " << high;
    cout << "The lowest number in the file is: " << low;

    return 0;
}

我错过了什么吗?

1 个答案:

答案 0 :(得分:2)

您需要将inputFile.close()作为括号中的函数调用。