迭代器的 问题
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int a;
vector<int> b;
vector<int>::iterator c = b.begin();
while (cin >> a)
{
*c = a;
c++;
if (a == 0)
{
break;
}
}
for (vector<int>::iterator e = b.begin();e != b.end();e++)
{
*c = (*c)*2;
c++;
}
return 0;
}
到底是哪里错了啊 找了一下午了 坐等大婶解答
[解决办法]
vector<int> b;
vector<int>::iterator c = b.begin();//b中还没有数据呢,你就却取了.去掉赋值.
while (cin >> a)
{
*c = a; //这里改成 b.push(a);
c++;//这句去掉
if (a == 0)
{
break;
}
}