注册 登录
编程论坛 C++教室

读取文本文件 遇到的问题

jhkyy 发布于 2010-05-14 16:03, 675 次点击
#include <iostream>
#include <fstream>          // file I/O suppport
#include <cstdlib>          // support for exit()
const int SIZE = 60;
int main()
{
    using namespace std;
    char filename[SIZE];
    ifstream inFile;        // object for handling file input

    cout << "Enter name of data file: ";
    cin.getline(filename, SIZE);
    inFile.open(filename);  // associate inFile with a file
    if (!inFile.is_open())  // failed to open file

    {
        cout << "Could not open the file " << filename << endl;
        cout << "Program terminating.\n";
        exit(EXIT_FAILURE);
    }
    double value;
    double sum = 0.0;
    int count = 0;          // number of items read

    inFile >> value;        // get first value
    while (inFile.good())   // while input good and not at EOF
    {
        ++count;            // one more item read
        sum += value;       // calculate running total
        inFile >> value;    // get next value
    }
    if (inFile.eof())
        cout << "End of file reached.\n";
    else if (inFile.fail())
        cout << "Input terminated by data mismatch.\n";
    else
        cout << "Input terminated for unknown reason.\n";
    if (count == 0)
        cout << "No data processed.\n";
    else
    {
        cout << "Items read: " << count << endl;
        cout << "Sum: " << sum << endl;
        cout << "Average: " << sum / count << endl;
    }
    inFile.close();         // finished with the file
    return 0;
}
 error C2377: “SIZE”: 重定义;typedef 不能由任何其他符号重载
用的vs 2008 编译器  不知道是编译器还是 size的用法错误
3 回复
#2
ltyjyufo2010-05-14 20:07
  没错啊,怎么我编译不提示???   是在VC6.0下
#3
lscalin2010-05-14 20:11
2008未发现你说的问题
#4
jhkyy2010-05-14 22:47
找到问题了  是因为加了一个文件
谢谢!!!!
1