C++ vector回车结束输入

原文链接:http://segmentfault.com/q/1010000004357985


方法一,可以分多行输入,每行不限个数,自动忽略输入中的空白符(空行、空格、制表符)。

std::vector<double> v;
for (double d; std::cin >> d; v.push_back(d)) {}

方法二,仅输入一行,自动忽略输入中的空白符(空行、空格、制表符)。

#include <sstream>
std::vector<double> v;
std::string line;
std::getline(std::cin, line);
std::istringstream iss(line);
for (double d; iss >> d; v.push_back(d)) {}

方法三,效果同方法一。

#include <iterator>
std::istream_iterator<double> in(std::cin), eof;
std::vector<double> v(in, eof);

注:把上述方法中的std::cin换成任一std::istream类型的变量或其子类的变量效果相同。例如换成std::ifstream类型的变量即可读取文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值