cin的奇怪有关问题
cin的奇怪问题
程序如下:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector <int> ivec1;
vector <int> ivec2;
int i_tmp;
int i_tmp2;
cout < < "enter the first array: " < <endl;
while( cin > > i_tmp )
ivec1.push_back( i_tmp );
cout < < "enter the second array: " < <endl;
while( cin > > i_tmp2 )
ivec2.push_back( i_tmp );
cout < < ivec2.size() < <endl;
return 0;
}
疑问:
为什么ivec2的长度总是0?
------解决方案--------------------
ivec2.push_back( i_tmp );
ivec2.push_back( i_tmp2 );
------解决方案--------------------
cout < < "enter the second array: " < <endl;
cin.clear();
while( cin > > i_tmp2 )
程序如下:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector <int> ivec1;
vector <int> ivec2;
int i_tmp;
int i_tmp2;
cout < < "enter the first array: " < <endl;
while( cin > > i_tmp )
ivec1.push_back( i_tmp );
cout < < "enter the second array: " < <endl;
while( cin > > i_tmp2 )
ivec2.push_back( i_tmp );
cout < < ivec2.size() < <endl;
return 0;
}
疑问:
为什么ivec2的长度总是0?
------解决方案--------------------
ivec2.push_back( i_tmp );
ivec2.push_back( i_tmp2 );
------解决方案--------------------
cout < < "enter the second array: " < <endl;
cin.clear();
while( cin > > i_tmp2 )