从字符串中删除一个字符

2023-12-14

我有一根绳子。如果字符串的最后一个字符是空格,我想删除它。 我尝试了以下代码,

str.erase(remove_if(str.begin(), str.end(), isspace), str.end());

但我的 g++ 编译器给了我一个错误:

error: no matching function for call to ‘remove_if(__gnu_cxx::__normal_iterator<char*,
std::basic_string<char, std::char_traits<char>, std::allocator<char> > >,
__gnu_cxx::__normal_iterator<char*, std::basic_string<char, std::char_traits<char>,
std::allocator<char> > >, <unresolved overloaded function type>)’

请帮忙。


第一个问题是isspaceC++ 标准库中有多个重载。最初的修复是为函数提供显式类型,以便编译器知道要获取哪个函数的地址:

#include <string>
#include <algorithm>
#include <cctype>

int main()
{
   std::string str = "lol hi innit";
   str.erase(std::remove_if(str.begin(), str.end(), (int(*)(int))isspace), str.end());
   std::cout << str; // will output: "lolhiinnit"
}

这是一个很大的丑陋,但是,嘿,这是 C++。

其次,您的代码将删除all字符串中存在空格,这似乎不是您想要的。考虑一个关于字符串最后一个字符的简单 if 语句:

#include <string>
#include <cassert>

int main()
{
   std::string str = "lol hi innit ";
   assert(!str.empty());

   if (*str.rbegin() == ' ')
      str.resize(str.length()-1);

   std::cout << "[" << str << "]"; // will output: "[lol hi innit]"
}

希望这可以帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从字符串中删除一个字符 的相关文章

  • SL4 AutoCompleteBox 重复筛选结果问题

    我在 AutoCompleteBox 过滤方面遇到问题 它似乎记住了之前的过滤器 例如 我输入 A 它会返回 1 项 我删除 A 并输入 Z 这应该返回 1 项 问题是它返回 A 过滤器加上 Z 的结果 我删除 Z 并输入 S 这会带回 2
  • DispatcherTimer 未按时执行

    我正在使用 c 中的 DispatchTimer 编写一个时钟应用程序 但由于某些原因 我的时钟似乎时不时地跳过 1 秒 例如 52 秒 gt 54 秒 跳过 53 秒 在我看来 计时器并不是每秒都执行一次 DispatcherTimer
  • MVC 重定向到没有控制器的视图

    希望应该是一个简单的 我创建了一个通用错误视图 当整个站点的操作方法内发生异常时 我想显示该视图 我创建了一个部分页面 所有导航都位于其中 因此我不需要在此视图上使用控制器 那么如何从控制器内的操作方法重定向到它 像这样的东西 HttpPo
  • 更快的算法来计算有多少数字可以被范围内的特定整数整除

    int a b c d 0 cin gt gt a gt gt b gt gt c for int i a i lt b i if i c 0 d cout lt
  • 没有 Unicode 字节顺序标记。无法切换到 Unicode

    我正在使用 XSD 编写 XML 验证器 下面是我所做的 但是当验证器到达该线时while list Read 它给了我错误 没有 Unicode 字节顺序标记 无法切换到 Unicode 有人可以帮我解决吗 public class Va
  • 按字符分割字符串

    scala 有一个标准的分割字符串的方法StringOps split 但它的行为有点让我惊讶 演示一下 使用快捷便利功能 def sp str String str split toList 以下表达式全部计算结果为 true sp Li
  • 通过引用传递时取消引用指针

    当通过引用传递给函数时取消引用指针时会发生什么 这是一个简单的例子 int returnSame int example return example int main int inum 3 int pinum inum std cout
  • 将 C# 反射代码移植到 Metro-Ui

    我正在尝试移植使用反射的现有 C 类 通用工厂 但我无法编译这段代码 Type types Assembly GetAssembly typeof TProduct GetTypes foreach Type type in types i
  • 在通过网络发送之前压缩位图

    我正在尝试通过网络发送位图屏幕截图 因此我需要在发送之前对其进行压缩 有一个库或方法可以做到这一点吗 当您将图像保存到流时 您have选择一种格式 几乎所有位图格式 bmp gif jpg png 都使用一种或多种压缩形式 因此 只需选择适
  • 特定设备的不同字体大小

    我目前正在开发通用应用程序 我需要分别处理移动设备和桌面的文本框字体大小 我找到了一些方法 但都不能解决问题 使用 VisualStateManager 和 StateTrigger 为例
  • 线程安全的 C++ 堆栈

    我是 C 新手 正在编写一个多线程应用程序 不同的编写者将对象推入堆栈 读者将它们从堆栈中拉出 或至少将指针推入对象 C 中是否有任何内置结构可以在不添加锁定代码等的情况下处理此问题 如果没有 那么 Boost 库呢 EDIT 你好 感谢您
  • 为什么WCF中不允许方法重载?

    假设这是一个ServiceContract ServiceContract public interface MyService OperationContract int Sum int x int y OperationContract
  • 如何不在类中实现接口的功能?

    面试时面试官问了我以下问题 但我不知道这个问题的答案是什么 请帮忙 如果我不想 我必须做什么 在我的类中实现一个函数 在接口中声明为 由我班实施 Edited 我正在使用 NET 和 C 如果有人可以提供 C 示例代码示例 那就太好了 Th
  • 如何将字符串转换为 Indian Money 格式?

    我正在尝试将字符串转换为印度货币格式 例如如果输入为 1234567 则输出应为 12 34 567 我编写了以下代码 但它没有给出预期的输出 CultureInfo hindi new CultureInfo hi IN string t
  • 理解 C++11 中的 std::atomic::compare_exchange_weak()

    bool compare exchange weak T expected T val compare exchange weak 是 C 11 中提供的比较交换原语之一 它是weak即使对象的值等于 它也会返回 falseexpected
  • C++ 标准中短语“构造函数没有名称”的含义

    在尝试理解 C 标准中的 构造函数没有名称 这句话时 我似乎在 clang 中发现了一个错误 有人可以证实这一点吗 VS2015 and gcc rejects this code and I think they it are is co
  • 展开路径中具有环境变量的文件名

    最好的扩张方式是什么 MyPath filename txt to home user filename txt or MyPath filename txt to c Documents and settings user filenam
  • 微软语音识别速度

    我正在使用微软的语音识别器开发一个小型练习应用程序 对于我正在做的事情来说 我似乎无法让它足够快地识别单个单词 我希望能够正常说话 系统将从我所说的内容中抓取 关键字 并生成一个字符串 目前我正在使用 5 个单词的自定义语法 红 蓝 黄 绿
  • 如何将 CSV 文件读入 .NET 数据表

    如何将 CSV 文件加载到System Data DataTable 根据CSV文件创建数据表 常规 ADO net 功能是否允许这样做 我一直在使用OleDb提供者 但是 如果您正在读取具有数值的行 但希望将它们视为文本 则会出现问题 但
  • 如何确定给定方法可以抛出哪些异常?

    我的问题和这个真的一样 找出 C 中方法可能抛出的异常 https stackoverflow com questions 264747 finding out what exceptions a method might throw in

随机推荐

  • Cpdf.php 第 3855 行中的 ErrorException:未定义索引:位于 barryvdh/laravel-dompdf

    我正在使用 laravel 5 2 dompdf 在本地主机上运行良好 但当移动到 AWS 时 它不断显示ErrorException in Cpdf php line 3855 Undefined index 在这一行 3855 中有字体
  • 带有 ssl 本地证书的 QNetworkRequest

    我需要与需要本地证书 crt 文件 的服务器交换数据 我试试这个 loginRequest QNetworkRequest QUrl https somesite com login QSslConfiguration sslConf lo
  • 打印特定类型的金字塔

    对于uni 我们必须打印特定类型的金字塔 这是代码 h 10 def build string pyramid s for i in range 1 h 1 print 1 end for j in range 2 i 1 print en
  • 致命错误:找不到类“Swift_smtpTransport”

    我正在尝试添加从我的网站后端向客户发送电子邮件的功能 并尝试使用 swiftmailer 来执行此操作 不幸的是 我不断收到错误消息 Fatal error Class Swift smtpTransport not found in ho
  • 使用翻译行为时如何查询翻译的内容?

    我的网站有多种语言 因此文章的标题取决于当地语言 但有一个问题 如何搜索另一种语言的文章 目前 唯一的方法是输入英文标题 以便 cakePHP 检索法文名称 我无法用法语搜索它 例如 当我搜索 Hello 时 我找到了名为 Bonjour
  • 如何从 Windows 剪贴板读取位图

    我正在编写一个非常小的 C 程序来帮助我制作精灵动画 我希望它能够获取从 Photoshop 复制到剪贴板的数据 在我的程序中对其进行操作 然后使用转换覆盖剪贴板 但问题是我不知道如何从 Photoshop 读取初始剪贴板 我可以加载剪贴板
  • 如何以编程方式或定期清除操作 PrintService 事件日志?

    我们正在尝试对在 Windows Server 2008 R2 上运行的打印机进行一些内部打印审核 通过事件查看器启用日志后 应用程序和服务日志 gt Microsoft gt Windows gt PrintService gt 操作 我
  • 如何从 weka API 计算置信度?

    我正在使用weka java API 在训练集上训练后我可以得到预测的类标签 双 pred fc classifyInstance test instance i 但我想知道类标签的置信概率 我应该使用什么函数 在 GUI 中 我可以选择将
  • 如何使 webpack 开发服务器在端口 80 和 0.0.0.0 上运行以使其可公开访问?

    我对整体是新的nodejs reactjs如果我的问题听起来很愚蠢 世界深表歉意 我目前正在玩反应性 js 每当我做一个npm start它总是继续运行localhost 8080 我如何将其更改为运行0 0 0 0 8080使其公开 我一
  • 检查线程是否是boost线程

    为了进行线程本地清理 我需要创建一个断言来检查当前线程是否是通过 boost thread 创建的 我怎样才能检查是否是这种情况 也就是说 如何检查当前线程是否由 boost thread 处理 我只需要在线程退出时清理线程本地存储 Boo
  • 获取消息:来自 AWS API 网关的禁止回复

    我正在尝试在 AWS 上创建 lambda 服务 并通过 API 网关从外部访问它 无需身份验证或限制 为了让事情变得简单 我现在将网关设置为模拟 在 API 的 Get 方法中 授权设置为NoneAPI 密钥是not required 当
  • 如何在插入工作时更新 BLOB 列,错误 ORA-00932

    我无法更新 BLOB 字段 但插入可以 请参阅下面的代码 我的猜测是 这与在大量记录中存储一个 BLOB 值的问题有关 涉及复制大数据 就我而言 我知道只会更新一条记录 但 Oracle 可能认为可能需要更新多条记录 使用插入时 可以保证只
  • 查找决策树中到决策边界的距离

    我想找到样本到经过训练的决策树分类器的决策边界的距离scikit学习 特征都是数字的 特征空间可以是任何大小 到目前为止 我有一个基于示例 2D 案例的可视化here import numpy as np import matplotlib
  • X509Certificate2 服务器模式 SSL 必须使用具有关联私钥的证书

    我使用 SslStream 构建 Web 服务器 但是 下面的代码在 AuthenticateAsServer 时引发异常 static X509Certificate cert protected virtual Stream GetSt
  • 撤消对存储过程的更改

    我更改了一个存储过程 并在不知不觉中覆盖了其他开发人员对其所做的一些更改 有没有办法撤消更改并恢复旧脚本 不幸的是 我没有该数据库的备份 因此排除了该选项 答案是YES you can拿回来 但这并不容易 所有数据库日志every对其进行的
  • 如何将 Pandas 中的数据格式更改为“%Y%m%d”?

    我有一个 DF 第一列显示为例如2018 01 31 00 00 00 我想将该日期的整列 或在打印 保存到其他变量期间 转换为20180131格式 不希望在保存到 CSV 文件时执行此操作 尝试过这个但没有成功 df mydate pd
  • 如何写一个简单的PHP透明代理?

    我需要制作一个代理脚本 可以访问隐藏在登录屏幕后面的页面 我不需要代理来 模拟 登录 而是应该正常向用户显示登录页面 HTML 并且所有 cookie 和 HTTP GET POST 数据都通过代理流向服务器 因此登录应该是真正的 我不需要
  • 纯JavaScript监听输入值变化

    有没有办法创建一个常量函数来监听输入 以便当输入值发生变化时 立即触发某些内容 我正在寻找使用纯 JavaScript 的东西 没有插件 没有框架 而且我无法编辑 HTML 例如 当我更改输入中的值时MyObject 该函数运行 这是什么e
  • CSS:如何设置相对于父高度的图像大小?

    我试图弄清楚如何重新调整图像的大小 使其保持宽高比 但会重新调整大小 直到图像的高度与包含的 div 的高度相匹配 我有这些又大又长的图像 屏幕截图 我想将它们放入 200 像素宽 180 像素高的 div 中进行显示 而无需手动调整图像大
  • 从字符串中删除一个字符

    我有一根绳子 如果字符串的最后一个字符是空格 我想删除它 我尝试了以下代码 str erase remove if str begin str end isspace str end 但我的 g 编译器给了我一个错误 error no ma