c++ - 多字符字符常量警告
问题描述
if(per>=80)
grade='A+';
else if(per>=75&&per<=79)
grade='A';
else if(per>=70&&per<=74)
grade='A-';
else if(per>=65&&per<=69)
grade='B+';
else if(per>=60&&per<=64)
grade='B';
else if(per>=55&&per<=59)
grade='B-';
else if(per>=50&&per<=54)
grade='C+';
else if(per>=45&&per<=49)
grade='C-';
else if(per>=40&&per<=44)
grade='D';
else
grade='F';
当我运行此代码时,我收到消息多字符字符常量。我看到了相同问题的先前解决方案,但未能在我的代码中实现它。请任何人帮助我并告诉我应该使用什么来运行代码
解决方案
是你的引号。围绕一个字符的单引号用于char
文字,围绕多个字符的单引号被解释为整数类型的文字(参见此处),而围绕零个或多个字符的双引号被解释为const char*
(即 c 字符串)。
因此,你的'A+'
是一个,int
而不是你可能想要的。解决方法是改用双引号,假设它的类型是or 。char
string
grade
char*
std::string
推荐阅读
- c# - 为什么循环遍历 Excel 单元格并比较值需要这么长时间?
- c++ - 检测重复词
- java - 运行 Debian Buster LXDE 的 BeagleBone Black Industrial 上的空白 Java 窗口?
- javascript - 是否可以编辑 Sequelize 默认日志?
- shell - AIX - 如何列出今天日期的文件
- azure - 在同一个 VNet 中连接两个应用服务
- react-native - Redux 工具包和类组件 - React Native
- javascript - 重建一个深层嵌套的对象数组,删除不需要的对象
- django - 自定义 PasswordResetConfirmView
- java - PDFBox如何将两个pdf合并为新pdf