题目

参数解析(点击跳转)

这道题并不慢,主要是一些细节得注意。尤其是第三个参数和第四个参数可能会出现引号,所以在大的情况下得把遇到引号和不是引号的情况分开来讨论。我们建立一个临时变量temp,它用来依次分解每个参数,分解完成之后加入到返回结果里面。由于这道题,思路不难,主要是一些细节问题,所以具体操作过程用代码详细注释,这里就不多解释了

#include <iostream>
#include <string>
#include <vector>
using namespace std;int main()
{string input;//接受输入string temp;//临时字符串vector<string> args;//分解的参数放在这里getline(cin, input);size_t i = 0;while (input[i] != ' ')//首先分解第一个字符,它比较特殊 比如xcopy{temp += input[i];//挨个字符给到tempi++;}i++;//i++表示移动到第二个参数的开头args.push_back(temp);//第一个参数进入while (i < input.size()){temp.clear();//每分解完一个参数,就不把临时字符串清空一下,以便分解下一个字符串if (input[i] == '\"')//如果碰见引号{i++;//i++表示略过引号while (input[i] != '\"')//把引号间的内容依次给到temp{if (i >= input.size())//注意防止越界,因为i会++{break;}temp += input[i];i++;}i += 2;//当遇到另一个引号停止,此时i指向了引号,下一个是空格,因此移动两次,指向下一个参数的开头args.push_back(temp);//下一个满足条件参数}else//如果不是引号,思路和上面才差不多{while (input[i] != ' '){if (i >= input.size())break;temp += input[i];i++;}i++;args.push_back(temp);}}cout << args.size() << endl;for (size_t i = 0; i < args.size(); i++)//依次输入{cout << args[i] << endl;}return 0;}

字符串经典题之参数解析相关推荐

  1. 字符串经典题之正则匹配字符串

    题目 字符串通配符 注意 此题和LeetCode 10:正则表达式匹配这道题虽然看着一样,但是本质不一样.力扣上的这道题,对于*匹配的是它前面的0个或多个,是单个字符,而牛客的这道题*匹配任意字符串多 ...

  2. 字符串经典题之大数相加

    题目 字符串相加 解答 相加时按照对应为相加即可,注意有的时候相加可能会导致进位,所以我们可以定义一个变量next,next取值为0表示不进位,next取值为1表示进位.拿出对应位的字符的时候,将他们 ...

  3. 字符串经典题之扑克牌的大小

    题目 这种类型的题目不涉及算法,和我们日常的业务逻辑十分相似.最关键的一点就是思维清晰,逐步细化. 比较的时候首先比较类型,如果两副牌的数目相同,那么肯定是相同类型的,在这种情况下再去比较点数,而比较 ...

  4. Java基础2019最新Java面试经典题解析

    Java基础2019最新Java面试经典题解析 1简述JVM.JRE.JDK的区别 JVM:java虚拟机 ,加载.class并运行.class JRE:java运行环境除了包含JVM以外还包含了运行 ...

  5. SQL笔试经典50题及答案解析(题目1-10)

    前言 最近博主在准备数据分析岗位的笔试和面试,其中的考察重点就是SQL.听说练了这50道题目(题目和数据来源参考:互联网校招SQL笔试经典50题及答案解析),什么现场手撕SQL统统都不怕,我就赶紧来练 ...

  6. SQL笔试经典50题及答案解析

    [转]SQL笔试经典50题及答案解析 建表语句 create table Student(sid varchar(10),sname varchar(10),sage datetime,ssex nv ...

  7. SQL笔试经典50题及答案解析(题目21-30)

    前言 最近博主在准备数据分析岗位的笔试和面试,其中的考察重点就是SQL.听说练了这50道题目(题目和数据来源参考:互联网校招SQL笔试经典50题及答案解析),什么现场手撕SQL统统都不怕,我就赶紧来练 ...

  8. java期末考试2013及答案_java笔试经典(题及答案)2013.doc

    java笔试经典(题及答案)2013.doc Java笔试经典(基础部分及答案和分析)1.一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制?7答:可以包括多个 ...

  9. python getopt使用_Python命令行参数解析模块getopt使用实例

    这篇文章主要介绍了Python命令行参数解析模块getopt使用实例,本文讲解了使用语法格式.短选项参数实例.长选项参数实例等内容,需要的朋友可以参考下 格式 getopt(args, options ...

最新文章

  1. 视频+课件| 室内动态变化场景中的相机重定位(CVPR2021)
  2. 举重若轻的人人车移动端数据平台
  3. python list索引_Python按照索引访问list
  4. 由浅到浅入门批量渲染(三)
  5. 记录——oracle数据库备份
  6. php的$符的作用,PHP引用符的用法举例
  7. win10wifi多了数字_Win10 技巧:如何修改有线 / WiFi 网络优先级?
  8. 川大《计算机应用基础》第二次作业,川大16秋《计算机应用基础》第二次作业答案.pdf...
  9. MMC 事件查看器无法打开
  10. php量表是什么心理量表,气质类型量表——计分标准
  11. python数据分析——简单且有用的代码
  12. WIFI驱动配置实战(Linux驱动开发篇)
  13. 盘点2022年电视行业:科技与美学的战场三星缔造“生活方式”的全新价值
  14. 农业温室大棚养殖系统智能监控方案
  15. TFT彩屏常见汉字取模方式及相关驱动函数
  16. DOSBOX 使用及基本指令的用法
  17. 西南大学学前教育计算机答案,西南大学学前教育科研方法作业及答案.doc
  18. lcds- data management part Unable to access UserTransaction in DataService
  19. python双向索引是什么意思_Python集合支持双向索引。
  20. API Manager PHP 接口管理工具

热门文章

  1. r语言worldclim数据_R语言空间数据分析(五):栅格数据处理
  2. 泰克示波器查眼图_泰克示波器自带上位机软件功能介绍,了解一下
  3. SQLite | Case 子句
  4. 新的吉尼斯世界纪录 – 最快人类基因组测序,用时5 小时 2 分钟!
  5. 北大出版社继续送书 | 附上周4位中奖的朋友信息
  6. 总被审稿人提起的多重假设检验校正是什么?
  7. Python学习之路和隐藏特征
  8. linux查看tcp连接状态_Linux使用lsof查看打开的文件和网络连接
  9. win7怎么进入安全模式_windows 10如何进入安全模式
  10. python 正则表达式判断字符串是否为回文_JS使用栈判断给定字符串是否是回文算法示例...