先给出出现该错误的原因,总的来说是因为迭代器iterator越界了,出现了这个错误的话大家可以找一下迭代器做循环的时候是否越界
我的错误代码和改正方法如下:

string ReverseSentence(string str) {string str_new;int wordlength = 0;for (string::iterator iter = str.end() - 1; iter >= str.begin(); iter--)//错误就在这,到str的begin()了还继续进行自减操作{if (*iter != ' ' && iter != str.begin())wordlength++;else{if (iter == str.begin()){str_new.append(iter, iter + wordlength + 1);wordlength = 0;//break;  //应该在这里添加设一个break,当遍历到字符串头部的时候跳出循环,这样就能避免越界了}else{str_new.append(iter+1, iter + wordlength + 1);str_new.append(" ");wordlength = 0;}}}return str_new;
}

原题如下,是牛客网上剑指offer专栏的题。

牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”。Cat对一一的翻转这些单词顺序可不在行,你能帮助他么?

关于VS运行时出现错误cannot decrement string iterator before begin相关推荐

  1. c语言错误1004,excel宏运行时提示错误1004的三种解决方法

    在使用excel宏功能的时候,一些网友会遇到excel宏运行不了,软件提示:"运行时错误1004,应用程序定义或对象定义错误"的问题,那么,excel宏运行时错误1004怎么办?幸 ...

  2. 页面访问时发生错误 For input string fullname

    出错堆栈信息: <!DOCTYPEhtmlPUBLIC "-//W3C//DTD XHTML 1.0Transitional//EN""http://www.w3. ...

  3. 运行时常量池_从String的intern()到常量池

    前言 在知乎上遇到一个刚学Java就接触的字符串比较的问题: 通常,根据"==比较的是地址,equals比较的是值"介个定理就能得到结果.但是String有些特殊,通过new St ...

  4. Python 运行时常见错误汇总

    对于刚入门的Python新手,在学习过程中运行代码是或多或少会遇到一些错误,刚开始可能看起来比较费劲.随着代码量的积累,熟能生巧当遇到一些运行时错误时能够很快的定位问题原题.下面整理了常见的17个错误 ...

  5. pycharm运行时出现错误解决方法(持续更新中)

    1."unindent does not match any outer indentation level" 表示没有缩进,要缩进,复制黏贴代码的话要重新敲.缩进一遍 2.pyc ...

  6. CUDA程序在VS运行时出现错误:E0035 #error 指令: -- incorrect inclusion of a cudart header flie的解决方法

    最近在用VS调试一个CUDA程序,在调试时出现了错误E0035 #error 指令:--incorrect inclusion of a cudart header file,出错文件是func_ma ...

  7. java输错重新输入_java程序在dos界面运行时输入错误后返回重新输入的方法

    展开全部 修改点:62616964757a686964616fe78988e69d8331333332623936在switch中增加default判断错误的输入 将while设置成无限循环,就能够继 ...

  8. hibernate 程序运行时的错误,及解决办法(不定期更新)

    这个错误是因为:没有配置hibernate.cfg.xml中的最后一项 <mapping resource="org/hibernate/first/model/Student.hbm ...

  9. 怎么解决运行时输入错误,请重新输入以及专业无法输入的问题

    #include<iostream> using namespace std; #include<string> #define MAX 1000     // 设计联系人结构 ...

最新文章

  1. C++读写txt文件方式以及基于opencv的Mat数据类型读写txt文件
  2. 登顶 GitHub 趋势榜,标星1.8k:200 行 JS 代码让画面人物瞬间消失!
  3. SQL SERVER LEFT JOIN, INNER JOIN, RIGHT JOIN
  4. .NET Framework是什么
  5. 数学的记号(notation)
  6. 性能为王:选择模拟监控的10大理由!
  7. nfc pm3 模拟加密门禁卡_关于如何用PM3将有密门禁卡写入支持NFC的手机
  8. [笔记]unity渲染相关各种方案总结
  9. rtl8812bu网卡Linux驱动,Linux 安装 RTL8812AU 无线 USB 网卡驱动
  10. MainMenu中控制点击效果
  11. 厦门大学计算机科学非全,厦门大学:2017年非全日制硕士招生全部为专业学位...
  12. 美团(2) - 实战准备
  13. Java线程等待唤醒机制(加深理解)
  14. elementUI——form表单
  15. 论文研读 —— 6. ImageNet Classification with Deep Convolutional Neural Networks (2/3)
  16. 软考证书的含金量有多高?
  17. 设置控件的视觉效果(Win32)
  18. C#窗体控件—pictureBox使用
  19. 2022安全员-C证考试模拟100题及在线模拟考试
  20. Android 获取所有手机联系人名单

热门文章

  1. android页面布局计算机,Android Studio制作简单计算器App
  2. 什么是计算机内存?它的用途是什么?
  3. html怎么改变网页整体的大小,html设置浏览器大小
  4. 如何防止数据库的编码格式跟项目编码格式不一致产生乱码, 怎么让数据库的编码格式跟项目编码格式保持一致
  5. 《缠中说禅108课》69:月线分段与上海大走势分析、预判
  6. Windows11网速慢解决方案
  7. P3373(线段树2)
  8. 华为p4不是鸿蒙吗怎么又改为安卓_鸿蒙系统是不是就是改版的安卓系统?
  9. 硬件设计--DC/DC电源芯片详解
  10. narwal机器人_Narwal云鲸扫地机器人扫拖彻底,用户用得更省心省力