按字典顺序比较字符串

2024-03-21

我认为如果我在 C++ 中使用“">”和“

if("aa" > "bz") cout<<"Yes";

这不会打印任何内容,这就是我需要的,但是如果我输入

if("aa" > "bzaa") cout<<"Yes";

这将打印“是”,为什么会发生这种情况?或者我应该使用其他方法按字典顺序比较字符串?


比较std::string-就像那样will工作。但是您正在比较字符串文字。要进行比较,您需要使用它们初始化 std::string 或使用 strcmp:

if(std::string("aa") > std::string("bz")) cout<<"Yes";

这是 C++ 风格的解决方案。

或者:

if(strcmp("aa", "bz") > 0) cout<<"Yes";

编辑(感谢康拉德·鲁道夫的评论):事实上,在第一个版本中,只有一个操作数应该显式转换,因此:

if(std::string("aa") > "bz") cout<<"Yes";

将再次按预期工作。

编辑(感谢 churill 的评论):从 c++14 开始,您可以使用字符串文字:

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

按字典顺序比较字符串 的相关文章

  • 我如何理解这个 C 类型声明?

    double bar int double double double double 在查看讲座幻灯片时 我发现了留给学生的练习 用简单的英语来说 什么是类型bar在这个 C 声明中 Please帮助我解决这个问题 我什至不知道从哪里开始
  • 在 Xamarin 中隐藏软键盘

    如何隐藏软键盘以便在聚焦时显示Entry在 Xamarin forms 便携式表单项目中 我假设我们必须为此编写特定于平台的渲染器 但以下内容不起作用 我创建自己的条目子类 public class MyExtendedEntry Entr
  • EF Core 通过完全替换断开集合导航属性的更新

    使用 EF Core 5 0 我有一个 SPA 页面 可以加载Group实体及其集合Employee来自 API 的实体 var groupToUpdate await context Groups Include g gt g Emplo
  • 信号处理程序有单独的堆栈吗?

    信号处理程序是否有单独的堆栈 就像每个线程都有单独的堆栈一样 这是在 Linux C 环境中 来自 Linux 手册页signal 7 http kernel org doc man pages online pages man7 sign
  • GCC 和 ld 找不到导出的符号...但它们在那里

    我有一个 C 库和一个 C 应用程序 尝试使用从该库导出的函数和类 该库构建良好 应用程序可以编译 但无法链接 我得到的错误遵循以下形式 app source file cpp text 0x2fdb 对 lib namespace Get
  • 时间:2019-03-17 标签:c#ThreadSafeDeepCopy

    我一直在阅读很多其他问题以及大量谷歌搜索 但我一直无法找到明确的解决方案 根据我读过的一些最佳实践 类的静态方法应该创建线程安全的 并且实例成员应该将线程安全留给消费者 我想为该类实现深度复制方法 该类本身还有其他引用类型成员 有没有什么方
  • 动态生成的控件 ID 返回为 NULL

    我可以在 Page PreInit 函数中创建动态控件 如何检索控件及其 ID 我的 C 代码用于创建动态控件之一 var btn new WebForms Button btn Text btn ID Addmore btn Click
  • 如何获取 QTableView 的标题列表?

    我有一个QTableView我的对话框中的对象 我需要访问该表的水平标题并将它们放入QStringList object 尽管进行了大量搜索 但我在 Qt 文档中找不到如何获取此标头列表 编辑 我发现的最接近的地方是this https w
  • 如何在 QTabWidget Qt 中展开选项卡

    我有一个QTabWidget像这个 但我想展开选项卡以 填充 整个小部件宽度 如下所示 我怎样才能做到这一点 我在用Qt 5 3 2 and Qt 创建者 3 2 1 Update 我尝试使用setExpanding功能 ui gt myT
  • 检查 RoutedEvent 是否有任何处理程序

    我有一个自定义 Button 类 当单击它时 打开特定窗口 它总是执行相同的操作 我添加了一个可以在按钮的 XAML 中分配的 Click 事件 就像常规按钮一样 当它被单击时 我想执行 Click 事件处理程序 如果已分配 否则我想执行默
  • 如何在标准 WPF ListView 中启用 UI 虚拟化

    我正在使用 NET 4 5 VS2012 并且我有一个 ListView 看起来像这样
  • 每个租户的唯一用户名和电子邮件

    我正在使用以下代码编写多租户应用程序ASP NET Core 2 1 我想覆盖默认的与用户创建相关的验证机制 目前我无法创建多个具有相同的用户UserName My ApplicationUser模型有一个名为TenantID 我想要实现的
  • C# 中的 strstr() 等效项

    我有两个byte 我想找到第二个的第一次出现byte 在第一个byte 或其中的一个范围 我不想使用字符串来提高效率 翻译第一个byte to a string会效率低下 基本上我相信就是这样strstr 在 C 中做 最好的方法是什么 这
  • 我可以让 ungetc 取消阻止阻塞的 fgetc 调用吗?

    我想在收到 SIGUSR1 后使用 ungetc 将 A 字符重新填充到标准输入中 想象一下我有充分的理由这样做 调用 foo 时 stdin 中的阻塞读取不会被收到信号时的 ungetc 调用中断 虽然我没想到它会按原样工作 但我想知道是
  • cout 和字符串连接

    我刚刚复习了我的 C 我尝试这样做 include
  • 了解使用 Windows 本机 WPF 客户端进行 ADFS 登录

    我已经阅读了大量有关 ADFS 与 NodeJS Angular 或其他前端 Web 框架集成以及一般流程如何工作的文献 并通过 Auth0 Angular 起始代码构建了概念证明 但我不明白如何这可以与本机 WPF Windows 应用程
  • C++ Streambuf 方法可以抛出异常吗?

    我正在尝试找到一种方法来获取读取或写入流的字符数 即使存在错误并且读 写结束时间较短 该方法也是可靠的 我正在做这样的事情 return stream rdbuf gt sputn buffer buffer size 但如果streamb
  • Erlang:如何将原子转换为字符串?

    我想从原子转换为字符串 Input hello world Output hello world 我该如何实现这一目标 Use atom to list http erlang org doc man erlang html atom to
  • 在简单注入器中解析具有自定义参数的类

    我正在使用以下命令创建 WPF MVVM 应用程序简易注射器作为 DI 容器 现在 当我尝试从简单注入器解析视图时遇到一些问题 因为我需要在构造时将参数传递到构造函数中 而不是在将视图注册到容器时 因此这不是适用的 简单注入器将值传递到构造
  • 使我的 COM 程序集调用异步

    我刚刚 赢得 了在当前工作中维护用 C 编码的遗留库的特权 这个dll 公开使用 Uniface 构建的大型遗留系统的方法 除了调用 COM 对象之外别无选择 充当此遗留系统与另一个系统的 API 之间的链接 在某些情况下 使用 WinFo

随机推荐

  • Capybara 匹配器用于确定按钮或链接的存在

    网页上的用户不区分 按钮 和 按钮样式的链接 有没有办法添加检查页面上是否存在 按钮或链接 例如水豚有步骤 page should have button Click me 它找不到按钮样式的链接 更新的答案 应该在 RSpec 3 0 中
  • 为什么我的 Spring @Autowired 字段为空?

    注意 这旨在成为常见问题的规范答案 我有一个春天 Service class MileageFeeCalculator 有一个 Autowired field rateService 但该字段是null当我尝试使用它时 日志显示 两个Mil
  • UIView drawRect 与 initWithFrame

    我有一个 UIView 其中添加了几个按钮作为子视图 目前我的按钮位于drawRect 中 我听说这是一个坏主意 因为drawRect可以被调用多次 我尝试将这些 UIButtons 移至 initWithFrame 但它们只是没有被绘制
  • Swift 2.2:不再导入 GCC_PREPROCESSOR_DEFINITIONS 常量

    The 本答案中描述的在 xcconfig 文件中分离 API 密钥的技术 https stackoverflow com a 32540064 569448不适用于 Swift 2 2由于错误 SR 909 https bugs swif
  • 如何从 C 扩展返回 Python 枚举?

    我正在为 Python 编写一个封装 C 库的 C 扩展 C 库有一些枚举类型 我已经编写了相应的IntEnums 用于这些 例如 from enum import IntEnum enum consts is a C extension
  • Breezejs EntityManager MetadataStore 和 fetchEntityByKey

    我有一个 SPA 应用程序 durandaljs 并且有一条特定的路线 可以在其中映射我想要获取的实体的 id 模板是 todoDetail id 例如 todoDetail 232 或 todoDetail 19 在 viewmodel
  • Android 中具有负半径的形状角

    我想创建一个带有角的复合视图 如下所示 这在 Android 中怎么可能呢 如果有人遇到同样的问题 最好的方法是使用 9 png 绘图 在 xml 中这是不可能的
  • default_batch_fetch_size推荐值

    我正在学习一些休眠教程 并陷入了default batch fetch size 阅读专家评论 Hibernate 可以用于性能敏感的应用程序吗 https stackoverflow com questions 651664 can hi
  • 修改 bootstrap Popover Html 内容不持久

    我有以下弹出窗口设置 弹出图标启动器
  • CURL 命令行 URL 参数

    我正在尝试发送DELETE使用 CURL 进行带有 url 参数的请求 我在做 curl H application x www form urlencoded X DELETE http localhost 5000 locations
  • 强制在 IE 中重新应用样式表

    考虑这个 HTML ul li first li li second li li third li ul 这个CSS li first child background yellow 还有这个 JavaScript jQuery ul ap
  • 创建多态透镜

    我能够为最后一个字段创建一个镜头 c 在我的数据类型中执行以下操作 LANGUAGE DuplicateRecordFields data X1 a c X1 a a b Int c c data X2 a b c X2 a a b b c
  • 如何在 PyQt 中自定义 QCompleter 弹出窗口?

    我有一些对于 QLineEdit 的 QCompleter 的定制感兴趣的东西 我想让它的行为类似于 Chrome 中的地址 搜索栏 如何限制显示的行数 例如 即使有 15 个匹配项 我也只希望 QCompleter 显示 5 个 如何调整
  • SQLite - 将带有换行符的字符串从csv文件插入数据库

    All 我正在尝试将长文本条目注入 SQLite 数据库的 TEXT 字段中 该文本中有新行 即它跨越多个段落 如果我手动执行 INSERT 我可以显示新行 INSERT INTO LOGENTRY VALUES 5 40 PLACE li
  • 如何截断 .net 中的日期?

    除了 DateTime ctor new DateTime year month day 之外 还有其他方法来截断日期吗 日期时间 日期 http msdn microsoft com en us library system dateti
  • 如何将更多参数传递给令牌端点 Web api 2

    我需要将更多参数传递给令牌端点 如下所示 grant type 密码 用户名 Alice 密码 密码123 peop1 值 Prop2 值 获取令牌 我如何传递这些以及我可以在服务器上哪里获取它们 OAuth2 资源所有者密码流定义了这些参
  • 查找给定文本中的子字符串.. C 程序

    char substring char text int position int length int i j 0 char temp for i position 1 i
  • 无法以json格式将数据从php添加到jqGrid

    你好 StackOverFlow 国家 我正在尝试向 jqGrid 添加信息 该信息是从 MySQL 数据库检索的 我有两个文件 gt index html 和 data php 都在同一目录中 index html 来源 gt
  • SQL |返回最小值 |动态多行

    我需要创建一个查询 仅返回特定列中具有最小值的行 我有这个结果 示例 Name Description Order Name1 A 1 Name1 B 2 Name1 C 3 Name2 A 1 Name2 B 2 Name2 C 3 我想
  • 按字典顺序比较字符串

    我认为如果我在 C 中使用 gt 和 if aa gt bz cout lt lt Yes 这不会打印任何内容 这就是我需要的 但是如果我输入 if aa gt bzaa cout lt lt Yes 这将打印 是 为什么会发生这种情况 或