c++ 不能出现在常量表达式中| [复制]

2023-12-25

可能的重复:
如何在 switch 语句中选择值范围? https://stackoverflow.com/questions/9432226/how-do-i-select-a-range-of-values-in-a-switch-statement

我遇到了一些错误,我已经搜索了一段时间,但我不知道错误的原因是什么。 (我对编程还很陌生。)

以下是我收到的错误:

error: 'Essais' cannot appear in a constant-expression| (line 200)
warning: overflow in implicit constant conversion| (line 202)

我有箱子和科特迪瓦:

  char AfficherCote (int Essais)
 {
 char Cote;
 switch (Essais)
  {
(line200)       case Essais<=20:
    {
(line 202)           Cote='Excellent';

        return (Cote);
        break;
    }
    case Essais<=40:
    {
        Cote='Très bon';
        return (Cote);
        break;
    }
    case Essais<=60:
    {
        Cote='Bon';
        return (Cote);
        break;
    }
    case Essais<=80:
    {
        Cote='Moyen';
        return (Cote);
        break;
    }
    case Essais<=100:
    {
        Cote='Muvais';
        return (Cote);
        break;
    }
    case Essais>=100:
    {
        Cote='Très mauvais';
        return (Cote);
    }
  }
}

switch-case only works with constant values(*) (such as 3 or 'a'), not with ranges (such as <=100). You also must not include the variable name in the case statement. Correct syntax would be as follows:

switch (Essais)
{
case 1:
   /* ... */
  break;
case 2:
   /* ... */
   break;
default:
   /* ... */
}

如果您需要范围测试,请使用if代替switch-case:

if (Essais <= 80)
  return "Cote";
else if (Essais <= 100)
  return "Muvais";

另请注意,不能使用单引号'对于字符串。使用双引号"相反,并使用类型的变量std::string (not char) 来存储字符串。


(*) To be precise, the condition given in the case statements must be a constant expression of integral type, enumeration type, or class type convertible to integer or enumeration type (see §6.4.2/2 of the C++ Standard for details).

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

c++ 不能出现在常量表达式中| [复制] 的相关文章

  • 在 LINQ 查询中返回不带时间的日期

    我正在编写一个查询 我想计算按日期联系我们的呼叫中心的次数 看起来很简单 但由于联系日期字段是日期时间字段 我得到了时间 因此当我按联系日期 时间 分组时 每个联系日期实例的计数为 1 所以 我想只按日期分组 而不按时间分组 下面是我用来查
  • 自动从 C# 代码进行调试过程并读取寄存器值

    我正在寻找一种方法来读取某个地址的 edx 注册表 就像这个问题中所问的那样 读取eax寄存器 https stackoverflow com questions 16490906 read eax register 虽然我的解决方案需要用
  • 在 Xamarin Android 中将图像从 URL 异步加载到 ImageView 中

    我有一个包含多个项目的 ListView 列表中的每个项目都应该有一个与之关联的图像 我创建了一个数组适配器来保存每个列表项并具有我希望加载的图像的 url 我正在尝试使用 Web 请求异步加载图像 并设置图像并在加载后在视图中更新它 但视
  • 写入和读取文本文件 - C# Windows 通用平台应用程序 Windows 10

    有用 但在显示任何内容之前 您必须在文本框中输入内容 我想那是因为我使用了 TextChanged 事件处理程序 如果我希望它在没有用户交互的情况下显示文本文件的内容 我应该使用哪个事件处理程序 因此 我想在按下按钮时将一些数据写入 C W
  • c 中的错误:声明隐藏了全局范围内的变量

    当我尝试编译以下代码时 我收到此错误消息 错误 声明隐藏了全局范围内的变量 无效迭代器 节点 根 我不明白我到底在哪里隐藏或隐藏了之前声明的全局变量 我怎样才能解决这个问题 typedef node typedef struct node
  • 使用安全函数在 C 中将字符串添加到字符串

    我想将文件名复制到字符串并附加 cpt 但我无法使用安全函数 strcat s 来做到这一点 错误 字符串不是空终止的 我确实设置了 0 如何使用安全函数修复此问题 size strlen locatie size nieuw char m
  • Windows 窗体不会在调试模式下显示

    我最近升级到 VS 2012 我有一组在 VS 2010 中编码的 UI 测试 我试图在 VS 2012 中启动它们 我有一个 Windows 窗体 在开始时显示使用 AssemblyInitialize 属性运行测试 我使用此表单允许用户
  • 如何在 Team Foundation 上强制发表有意义的签入评论?

    我有一个开发团队有一个坏习惯 他们写道poor签入评论 当我们必须在团队基础上查看文件的历史记录时 这使得它成为一场噩梦 我已经启用了变更集评论政策 这样他们甚至可以在签到时留下评论 否则他们不会 我们就团队的工作质量进行了一些讨论 他们很
  • 我的 strlcpy 版本

    海湾合作委员会 4 4 4 c89 我的程序做了很多字符串处理 我不想使用 strncpy 因为它不会终止 我不能使用 strlcpy 因为它不可移植 只是几个问题 我怎样才能让我的函数正常运行 以确保它完全安全稳定 单元测试 这对于生产来
  • Windows 10 中 Qt 桌面应用程序的缩放不当

    我正在为 Windows 10 编写一个简单的 Qt Widgets Gui 应用程序 我使用的是 Qt 5 6 0 beta 版本 我遇到的问题是它根本无法缩放到我的 Surfacebook 的屏幕上 这有点难以判断 因为 SO 缩放了图
  • 像“1$”这样的位置参数如何与 printf() 一起使用?

    By man I find printf d width num and printf 2 1 d width num 是等价的 但在我看来 第二种风格应该与以下相同 printf d num width 然而通过测试似乎man是对的 为什
  • 网络参考共享类

    我用 Java 编写了一些 SOAP Web 服务 在 JBoss 5 1 上运行 其中两个共享一个类 AddressTO Web 服务在我的 ApplycationServer 上正确部署 一切都很顺利 直到我尝试在我的 C 客户端中使用
  • 用 C 实现 Unix shell:检查文件是否可执行

    我正在努力用 C 语言实现 Unix shell 目前正在处理相对路径的问题 特别是在输入命令时 现在 我每次都必须输入可执行文件的完整路径 而我宁愿简单地输入 ls 或 cat 我已经设法获取 PATH 环境变量 我的想法是在 字符处拆分
  • 检查 url 是否指向文件或页面

    我们需要以下内容 如果文件确实是文件 则从 URL 下载该文件 否则 如果它是一个页面 则什么也不做 举个简单的例子 我有以下命令来下载文件 My Computer Network DownloadFile http www wired c
  • EPPlus Excel 更改单元格颜色

    我正在尝试将给定单元格的颜色设置为另一个单元格的颜色 该单元格已在模板中着色 但worksheet Cells row col Style Fill BackgroundColor似乎没有get财产 是否可以做到这一点 或者我是否必须在互联
  • 已过时 - OpenCV 的错误模式

    我正在使用 OpenCV 1 进行一些图像处理 并且对 cvSetErrMode 函数 它是 CxCore 的一部分 感到困惑 OpenCV 具有三种错误模式 叶 调用错误处理程序后 程序终止 Parent 程序没有终止 但错误处理程序被调
  • Bing 地图运行时错误 Windows 8.1

    当我运行带有 Bing Map 集成的 Windows 8 1 应用程序时 出现以下错误 Windows UI Xaml Markup XamlParseException 类型的异常 发生在 DistanceApp exe 中 但未在用户
  • 如何使用 ReactiveList 以便在添加新项目时更新 UI

    我正在创建一个带有列表的 Xamarin Forms 应用程序 itemSource 是一个reactiveList 但是 向列表添加新项目不会更新 UI 这样做的正确方法是什么 列表定义 listView new ListView var
  • 如何将字符串“07:35”(HH:MM) 转换为 TimeSpan

    我想知道是否有办法将 24 小时时间格式的字符串转换为 TimeSpan 现在我有一种 旧时尚风格 string stringTime 07 35 string values stringTime Split TimeSpan ts new
  • 如何连接字符串和常量字符?

    我需要将 hello world 放入c中 我怎样才能做到这一点 string a hello const char b world const char C string a hello const char b world a b co

随机推荐

  • 如何查看 mongodb 正在执行的查询?

    我一直在我的 log development log 中看到这个 我想知道这个查询是否真的在我的数据库中执行 MONGODB 0ms socialcrunch development tags find id gt secrets limi
  • 测试redis密钥过期

    我想知道是否有人有一种聪明的方法来测试 redis 密钥过期后的行为 我本质上是为我的应用程序构建一个小型的 Redis 支持的缓存 并想测试 Redis 密钥设置过期后会发生什么 我使用 rspec 作为我的测试框架 我尝试在测试期间使用
  • 安卓过渡

    我使用以下代码为我的 SplashScreen 设置两个图像之间的动画 public void onCreate Bundle savedInstanceState super onCreate savedInstanceState set
  • 将 iPhone CoreData 文件从一个项目复制到另一个项目

    我正在尝试创建 2 个应用程序 一个构建持久存储 另一个使用它 到目前为止 我已经构建了一个应用程序 它使用 CoreData 从 XML 文件成功构建数据库 所以这个项目包含数据模型 实体的 h m 文件等 我现在尝试通过将数据模型文件
  • 如何计算双打的平均值,以使总误差最小?

    假设我们有一长串双打 比如说 N 1000000 array
  • OpenGL-ES 2.0 VS OpenGL-ES 1.1,哪个更快?

    我已经使用 OpenGL ES 1 1 编写了一个应用程序 但我想知道切换到 2 0 是否可以提高速度 有人用大多边形模型做过测试吗 我只想渲染具有不同颜色的三角形 没什么花哨的 然而 我想要渲染大约 100 万个三角形用于我的比较测试 O
  • 使用 ViewModel 在 MVC3 C# 中创建一个下拉列表,并在 POST 返回时轻松绑定模型。

    我有这个问题 我想为一周中的每一天制作 7 个下拉菜单 在每个下拉列表中 我希望添加相同的数据 我的视图模型 public class WeekDienstCreateViewModel public WeekDienst weekDien
  • Maven 有没有办法确保属性已设置

    我刚刚找到了一个由错误的属性值引起的困难 Maven 问题 该属性是测试运行时使用的备用 JVM 的路径 我想通过检测路径是否有效来使 Maven 尽早失败 实现这一目标的方法可能是什么 我打算深入研究antrun 看看是否有办法让它先运行
  • 如何使用 Enzyme 或 React 测试库在 React 中测试 Material-UI 的响应式 UI(例如隐藏、网格、断点)

    如何测试 Material UI 中的响应式元素 Example import React from react import Hidden from material ui core Hidden const HideOnMobile p
  • vim + COPY + mac 通过 SSH

    我通过 ssh 访问服务器 在该服务器上运行 vim 来编辑文件 当我尝试使用 y 或 y 将文本从 vim 拉入本地编辑器时 它不起作用 我最终得到的是我最后在本地复制的文本 如果我只在其中使用 p 它确实有效维姆 好吧 为了扩展雷的答案
  • 使用 const int 定义数组的大小

    当我尝试运行它时 它给我一个错误 指出变量中的值a不是恒定的 这对我来说没有意义 因为我明确地创建了变量a持续的 数组的大小是否必须比这个更恒定 意思是 仅 define a 5 或将其初始化为int arr 5 或使用malloc 我的做
  • 使用令牌进行 PouchDB 身份验证(Cookie:AuthSession=xyz)导致不安全标头“Cookie”

    我想使用 couchdb 给出的访问令牌连接到我的远程 couchdb 数据库 这可以通过发送带有以下内容的标头来完成 Cookie AuthSession COUCHDB TOKEN 我用curl 做到这一点没有问题 但是 使用 pouc
  • 使用 python 将操纵杆输入发送到程序

    我正在虚拟机中使用 Ubuntu 我想将带有 Python 脚本的操纵杆输入发送到其他程序 基本上与https pythonprogramming net direct input game python plays gta v compl
  • 移动:html5 与 xhtml [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 致命错误:ZF2 骨架应用程序未找到“Locale”类

    我刚刚安装了ZF2beta5应用程序 https github com zendframework ZendSkeletonApplication根据给定的说明 git clone git github com zendframework
  • 如何在 ControlTemplate 中使用 ElementName 绑定?

    我有多个 TextBlocks 它们引用我的应用程序中的不同元素 我的代码直接在页面中使用时工作正常 但是 我想创建一个 ControlTemplate 和一个 ContentControl 以减少代码的重复 如何使用 TemplateBi
  • Tensorflow:获取标量张量值作为 int 传递给 set_shape()

    我正在尝试将 3D 图像及其标签从 numpy 数组加载到 TensorFlow 记录 然后在训练网络时从队列中读取它们 转换代码基于TensorFlow的转换初始模型 https github com tensorflow models
  • 如何在 Ember.js 中将内容与 JSON 绑定

    所有示例都在 arraycontroller content 中使用固定数据源 而我使用从另一个 Web 服务生成并返回 JSON 的动态数据源 它不会创建我在 Ember 中声明的对象 这是代码示例 ET AppYear Ember Ob
  • 为什么这个动画在 FireFox 中这么慢?

    我正在使用 D3 js 来操作一些 SVG 元素 我 惨痛的经历 了解到 较新版本的 FireFox 并不能真正很好地处理 D3 的力布局 所以我改用简单的旋转 但它在 Firefox 中仍然运行得很糟糕 在下面的代码中 group1是一个
  • c++ 不能出现在常量表达式中| [复制]

    这个问题在这里已经有答案了 可能的重复 如何在 switch 语句中选择值范围 https stackoverflow com questions 9432226 how do i select a range of values in a