会用c++向量的进,是关于读出文件的
要求是当输入0时输入结束即遇0输入结束,我用的向量。好像是输入0的那个地方有错,我找不到错误,希望各位指点下
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
int main()
{
vector < int > a;
int i=0;
ofstream outfile( "c:\\abc.txt ",ios::out);
if(!outfile)
{
cerr < < "open error " < <endl;
exit(1);
}
do
{
cin> > a;
outfile < <a < < " ";
i++;
}while(a!=0);
outfile.close();
return 0;
}
[解决办法]
你的vector <int> a;没有给a分配空间,下面是帮你修改了的代码:
vector < int > a;
int val; //增加的缓冲区
int i=0;
ofstream outfile( "c:\\abc.txt ",ios::out);
if(!outfile)
{
cerr < < "open error " < <endl;
exit(1);
}
do
{
cin> > val; //改为读取val
a.push_back(val);//把val放进vector
outfile < <val < < " "; //把val输入到文件
i++;
}while(val!=0); //改
outfile.close();
return 0;