c语言将字符串按空格分割_如何在c++中实现字符串分割函数split详解
前言
在学习c++中string相关基本用法的时候,发现了sstream的istringstream[1]可以将字符串类似于控制台的方式进行输入,而实质上这个行为等同于利用空格将一个字符串进行了分割,于是考虑到可以利用这个特性来实现c++库函数中没有的字符串分割函数split
string src("Avatar 123 5.2 Titanic K");
istringstream istrStream(src); //建立src到istrStream的联系
string s1, s2;
int n; double d; char c;
istrStream >> s1 >> n >> d >> s2 >> c;
//以空格为分界的各数值则输入到了对应变量上
实现细节
目的是可以像js中一样,调用一个函数即可以方便地获取到处理完毕后的字符串数组,根据c++的实际情况再进行参数调整。
1. 输入输出:
string* split(int& length, string str, const char token = ' ')
返回:处理完的字符串数组的首地址
传入:字符串str、分隔符token(默认参数为空格)、以及引用参数length,指明处理完毕后动态分配的数组长度
2. 数据透明处理:
由于istringstream会像cin一样,把空格视为数据间的界限,所以当分隔符不是空格时,需要将传入的分隔符换为空格,并且要提前对原有空格进行数据透明处理
字符替换利用了库al
c语言将字符串按空格分割_如何在c++中实现字符串分割函数split详解相关推荐
- java字符串字符排列组合_如何在Java中查找字符串的所有排列
java字符串字符排列组合 In this tutorial, we will learn how to find the permutation of a String in a Java Prog ...
- java中如何检查字符串都是数字_如何在Java中检查字符串是否为数字?
我们将检查字符串是否为数字-借助逻辑,我们将解决此问题,第一步,我们将使用一个名为str的字符串变量,并将任何值存储在其中. 在第二步中,我们将使用一个名为str_numeric的布尔变量,该变量存储 ...
- php根据字符串分割字符串_如何在PHP中按字符串分割字符串?
php根据字符串分割字符串 How to split a string by string in PHP? For example, 如何在PHP中按字符串分割 字符串 ? 例如, "a s ...
- python字符串筛选输出_如何在Python中过滤字符串列表
Python使用列表数据类型在顺序索引中存储多个数据.它的工作方式类似于其他编程语言的数字数组.filter()方法是Python的一种非常有用的方法.可以使用filter()方法从Python中的任 ...
- mysql中转换成字符串_如何在R中转换字符串的大小写?
mysql中转换成字符串 Hello, folks. In this tutorial we are going to convert the case of the string in R. The ...
- golang 格式化字符串_如何在Go中格式化字符串
golang 格式化字符串 As strings are often made up of written text, there are many instances when we may wan ...
- scala字符串替换_如何在Scala中替换字符串中的正则表达式模式?
scala字符串替换 Scala | 替换字符串中的正则表达式模式 (Scala | Replacing a regular expression pattern in a string) Repla ...
- python3提取字符串中的数字_如何在Python中从字符串中提取数字?
14 回复 | 直到 1 年前 1 430 3 年前 如果只想提取正整数,请尝试以下操作: >>> str = "h3110 23 cat 444.4 rabbit 11 ...
- python字符串转浮点数_如何在Python中检查字符串是否为数字(浮点数)?
python字符串转浮点数 Using python it is very to interconvert the datatypes of a variable. A string can be e ...
最新文章
- Python数据可视化——使用Matplotlib创建散点图
- 如何解决普通用户使用sudo找不到命令
- Webpack模块化原理简析
- 设计模式:依赖倒置原则
- 外观模式(Façade Pattern)
- c语言中 数组 左移,如何将一个数组的元素循环左移?
- 【ElasticSearch】es 面试题 视频 笔记
- ERP项目实施记录09
- [Java面试十]浏览器跨域问题.
- 惠普打印机136w硒鼓芯片怎么清零_惠普136w打印机怎么清零
- mp3太大怎么压缩变小?
- Python 基于jieba的三国演义词频分析与可视化
- 代码资源之中国天气网城市代码
- Linux中的远程连接
- dubbo源码阅读 Adaptive机制
- ssm实现用户登录功能拦截
- 移动商务,还是短信商务?
- 移动硬盘有文件但看不见怎么恢复文件
- 《漫步华尔街》摘抄与读后感
- 牛逼!StarRocks 2.0正式发布,新一年,新启航,新极速!
热门文章
- QT-全键盘支持中英文
- Mysql修改数据目录(迁移到挂载盘-5.7版本)
- 使用JQuery UI完成可输入内容且自动匹配的的下拉列表
- MediBangPaint Pro for Mac(漫画制作软件)
- apex声音断断续续_【游戏耳机佩戴】_摘要频道_什么值得买
- Live_2014/12/21
- Hello Git(五)——Git分布式工作流程
- Amazon EMR 配置 Hive 对Hue用户的权限控制
- 中山大学计算机在职研究生分数线,2016年中山大学考研(一月联考)复试基本分数线...
- 【历史上的今天】3 月 26 日:谷歌创始人诞生;AMD 创始人出生;第一届世界 Altair 计算机大会