请一个文件读取的问题
本人无意中编了一段程序,但是想不同为什么出现那样的结果。代码如下:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
void main()
{
ofstream output("data.dat");
int i;
i = 0;
if (output == NULL)
{
cout << "Open Outfile is lose!" << endl;
return ;
}
for (;i != 100;i++)
{
output << i ;
}
output.close();
ifstream input("data.dat");
if (input == NULL)
{
cout << "Open Infile if lose!" << endl;
return ;
}
while (!input.eof())
{
input >> i;
cout << i << endl;
}
input.close();
}
从现实结果来看,此程序是错误的。
原因:在写入文件的时候没有加入字符结束标示符,因此读取文件的时候,把data.dat文件中的所有数据当成一个int数据读取,造成输出错误。但为什么输出100?新手,哪位大哥帮忙解答一下。
补充:.NET技术 , VC.NET