当前位置: 首页 > news >正文

杭州网站建设制作手机软件的软件

杭州网站建设,制作手机软件的软件,ip备案信息查询,重庆巴南区网站开发一、概述 在 Java 和 python 中#xff0c;都有实现字符串切分的方法#xff0c; 如split() #xff0c;使用起来较为方便#xff0c;但是在标准的 C 中#xff0c;却没有内置的 split() 方法。 我们可以使用标准库中的一些函数和方法来实现字符串的切分#xff0c;这里…一、概述 在 Java 和 python 中都有实现字符串切分的方法 如split() 使用起来较为方便但是在标准的 C 中却没有内置的 split() 方法。 我们可以使用标准库中的一些函数和方法来实现字符串的切分这里主要使用到了C STL 中的 字符串流对象stringstream和 getline()函数 来实现字符串的切分。 二、stringstream 和 getline 简介 2.1 stringstream 类 stringstream 是 C STL 中的一个类定义于 sstream 头文件中sstream是stringstream的缩写。通过stringstream 可以将字符串作为输入输出流来处理类似于 cin 和 cout 对标准输入输出流的操作stringstream 可进行针对于字符串的输入输出操作 示例代码如下 #include iostream #include sstream using namespace std;int main() {// 创建一个 stringstream 对象 ss并初始化其内容stringstream ss(I Love You ! ! !);// 从 ss 中逐个读取单词输出到s然后输出到屏幕string s;while (ss s) {cout s;}cout endl;// 清除流的状态标志以重新定位ss.clear();// 将读取位置设置为开头以便从头开始读取流中的内容ss.seekg(0);// 将 ss 中的内容设置为 3 2 1覆盖原有内容ss.str(3 2 1);// 从 ss 中逐个读取整数并输出int t;while (ss t) {cout t ;}cout endl;return 0; }运行结果 2.2 getline()函数 getline() 是 C STL  中的一个函数用于从输入流中读取一行字符串。 该函数接受3个参数 1. 输入流对象istream通常是 cin 或 文件流对象。 2. 输出字符串string读取的字符串将存储于该变量。 3. 分隔符可缺省用于指定结束符如不指定分隔符参数则默认为换行符 \n 。 示例代码如下 #include iostream #include string using namespace std; int main() {string input;cout please input a string endl;// 默认换行符为结束符getline(cin, input);cout input string: [ input ] endl;cout \nplease input a string again endl;// 指定空格作为结束符getline(cin, input, );cout input string: [ input ] endl;return 0; } 运行结果 2.3 相关参考 关于字符串流对象 stringstream 的详细用法可以参考 cplusplus.com/reference/sstream/stringstream/ 关于 getline()函数 可以参考 cplusplus.com/reference/string/string/getline/ 三、切分方法 3.1 切分步骤 1. 创建字符串流对象使用目标字符串待切分的字符串对其进行初始化。 2. 以字符串流对象为输入流对象使用 getline() 函数以指定的结束符为结束标志依次读取输入的字符串。 3. 循环进行 2 直到结束。期间每次都会持续读取到指定的分隔符后结束此时可直接处理子串或者递归对子串进行处理以此实现对字符串的切分。 3.2 举例 姓名:时栈,性别:男,地区:陕西,爱好:游泳 对于上述字符串可以先以逗号为分隔符对于切分下来的子串再使用冒号作为分隔符。 四、示例代码 对于上述子串使用上述步骤进行切分代码如下 #include iostream #include sstream #include vector using namespace std; typedef pairstring, string PSS;// 该函数使用 delimiter 将 str 切分为键值对 // 并返回pairstring, string 的数组 vectorPSS split(string str, char delimiter){stringstream ss(str);string keyValueStr;vectorPSS ret;// 从 ss 中读取数据读取到delimiter符号为止并将读到的内容存储到keyValueStrwhile(getline(ss, keyValueStr, delimiter)){// 使用stringstream处理keyValueStr以提取键和值stringstream kvs(keyValueStr);string keyStr, valueStr;getline(kvs, keyStr, :);getline(kvs, valueStr, :);// 存储键值对到vector中ret.push_back( {keyStr, valueStr} );}return ret; }int main(){// 待切分的字符串string str1 姓名:时栈,性别:男,地区:陕西,爱好:游泳;string str2 日期:2024年3月14日; 农历:二月初五; 天气:多云; 星期:周四;// 根据字符串的特点进行切分vectorPSS kv1 split(str1, ,);vectorPSS kv2 split(str2, ;);// 输出kv1cout kv1: endl;for(PSS t : kv1) cout t.first t.second endl;// 输出kv2// 这里可以对kv2中的包含的空格进一步处理处理过程此处省略cout \nkv2: endl;for(PSS t : kv2) cout t.first t.second endl;return 0; } 运行结果 如有不当或错误之处恳请您的指正谢谢
http://www.zqtcl.cn/news/235261/

相关文章:

  • 有哪些好的网站建设移动网站建设解决方案
  • 江苏网站建设公司排名高校门户网站建设问题
  • 网站怎么加关键词视频网站程序
  • 建设网站需要的人员及资金建设一个网站的具体流程
  • 北京长空建设有限公司网站网站开发制作培训学校
  • 哪些网站可以免费做推广呢o2o营销模式
  • 注册网站的流程南京今天的最新消息
  • 做网站的没有进项票怎么办张家口市一建公司官网
  • 建设网站的本质智慧团建手机版
  • 嘉兴网站建设有前途吗沈阳男科医院排名10强名单公布
  • 手机网站变灰17种新型商业模式
  • 图书网站开发需求文档模板做网站现在用什么语言
  • 创建网站主题在哪里接单赚钱平台
  • 企业做网站的流程权威发布新闻的含义
  • 国外大型购物网站桂林视频网站制作
  • 平度那里有做网站的网站设计技术入股
  • 张家港专业做网站网站设计与建设ppt
  • 香奈儿网站设计分析网站建设新闻发布注意事项
  • 建设网站策划南京网站开发建设
  • 哪些网站可以做任务挣钱如何查询企业电话号码
  • 福田网站 建设深圳信科手机 网站制作
  • 网站站内优化方案佛山外贸网站建设哪家好
  • 厦门市网站建设局平台网站如何优化
  • 电子书网站用dz还是wordpresswordpress搭建购物网站
  • 广西住房和城乡建设培训中心网站吴江住房和城乡建设部网站
  • 游戏网站的导航条怎么做的安阳县属于哪个省哪个市
  • 网站建设科目国内有多少家做网站的企业
  • 如何建立一家公司网站江苏网站推广公司
  • 城市管理如何宣传市建设网站cms软件有什么功能
  • 网站建设优势网站为什么吸引人