在C,C++中实现split()分割字符串的功能
最近一个朋友问到我这样一个问题:
就是说给定你一个字符串,需要你用逗号进行分割成多个字符串,然后输出那些分割出来的字符串中满足回文的字符串。
事实上最近已经有好多人问过我关于分割字符串的问题了,于是今天打算写一篇文章去讨论这个问题。
首先我们需要介绍一下需要用到的工具:
getline() 函数
我们之前在算法学习的5.1一章那里用到过这个函数,但是并没有做详细地介绍,事实上getline除了头文件的输入输出外,一般有两种用法(一种是头文件< istream >中输入流成员函数,一种在头文件< string >中普通函数):
第一种:
cin.getline(string,int)
cin.getline(string,int,char)
这是第一种用法的两种格式,我主要介绍一下下面一种格式:
cin就不用解释了。string表示读入到流中的字符串,int为最大能读入的字符串长度。char表示读入的定界符(一般默认为回车符,就是我们最常见的用法)。
我们来看几个例子:
关于定界符:
(我的例子总是奇奇怪怪的)
第二种:
getline(cin,string)
getline(cin,string,char)
这里的作用和上一种基本是一样的。
<