C++读取多行数字然后读取该行各个数字
来源:互联网 发布:手机淘宝店铺模板复制 编辑:程序博客网 时间:2024/05/21 22:46
问题:
比如让循环读取一行数字“1 2 3;4 5 6;7 8 9;”
并且取出各个数字1,2,3,4,5,6,7,8,9
说明:输入只有一行,以‘;’为分隔符,其实是三行数字,但是注意最后结尾有一个‘;’(如果没有这个分号,代码将发生很大变化)。每行数字以空格分割。
解决:使用C++里面的getline和sstream。代码如下。
#include<iostream>#include<sstream>
#include<string>
using namespace std;
int main(){
string line;
string item;
while(getline(cin,line,';')){
istringstream items(line);
while(items>>item){
cout<<item<<endl;
}
}
return 0;
}
代码说明:
(1)getline从cin或者文件中读取整行字符串,getline(cin,line,';')的第三个参数表示getline的终止符。
(2)istringstream 必须包括头文件#include<sstream>,并且默认只能以空格、换行、制表符作为分隔符,不能想getline指定分隔符。
PS:如果输入变为:(最后一个分号';'没有了)
比如让循环读取一行数字“1 2 3;4 5 6;7 8 9”
则读取程序就无法再使用getline指定分割符实现了分行读取了(因为最后一行没有‘;’,程序无法读取最后一行):这个时候的思路是:
使用getline(cin,line)读取“1 2 3;4 5 6;7 8 9”作为一行字符串到line中,然后自己写个程序将line拆分为多个string,对每个string进行istringstream 读取。OK。
0 0
- C++读取多行数字然后读取该行各个数字
- python读取txt各个数字
- linux c 读取文件行数
- 用C写的读取代码行数。
- Bash-读取文件行数
- 如何读取代码行数
- cocos2dx 读取文本行数
- 读取任意行数据
- 数字读取
- C#:c#读取Excel并显示出来,然后存入数据库.
- POI读取excel实际行数
- JAVA按行数读取txt
- IDL读取txt文件行数
- matlab读取txt文档行数
- 指定行数读取log文件
- poi读取行数的问题
- BufferedReader的读取行数问题
- LineNumberReader读取文件的行数
- 滴滴快的笔试题:最长和为零的子数组
- c++ set
- org.springframework.orm.hibernate3.HibernateSystemException: a different object with the same identi
- 十种经典排序算法
- SQL Server数据库删除行问题
- C++读取多行数字然后读取该行各个数字
- 美团网16年研发类校招面试经历
- Java环境变量配置
- Android 基础1
- 278-e-First Bad Version
- 结构体与位域的对齐:
- 求数组中最大和为零的子串 滴滴打车2016笔试题目
- 滴滴快的笔试题:最大子矩阵
- Java Map数据结构与排序