如何连续读取多个以空格分开的数字?遇见回车结束?
首先,能用的函数有很多,比如cin.get(), cin.getline(), gets(),getchar(), getline(),但是,经过检验发现都不方便。
原因很明显,他们要求的参数不是字符串就是char*,用起来很麻烦。以下是我自己探索到的方法:
1.数组法。
int arr[20];
int idx = 0;
while(1)
{
cin >>arr[idx++];
char c = cin.get();
if(c == '\n')
break;
}
arr[idx] = '\0';
for(int i=0; i < idx; i++)
cout<
2.vector法。
vector
int a;
while(cin >> a)
{
v.push_back(a);
char c = cin.get();
if(c == '\n')
break;
}
cout<
while(v.size() > i)
{
cout<