在屏幕输入数字,保存到数组中,可是数组的个数不确定,没有边界如何读取屏幕中输入的数字,是个问题。
#include<iostream>
#include<string>
#include<vector>
using namespace std;
int main(void)
{
string s; //定义一个字符串接受屏幕中的一行数字,一般为数字和空格 或者 数字和‘,’。
getline(cin,s); //C++ 中getline读取输入的一行数字
int lenth = s.size(); //字符串的长度
int t = 0,num;
vector<int> arr;
for(int i = 0;i<lenth;++i)
{
if(s[i] == ' ') //注意这里若是,就写,
{
num = atoi(s.substr(t,i-t).c_str());
arr.push_back(num);
t = i+1;
}
else if(i == lenth-1) //如果到末尾的数字
{
num = atoi(s.substr(t,i).c_str());
arr.push_back(num);
}
}
return 0;
}