C++ //练习 4.23 因为运算符的优先级问题,下面这条表达式无法通过编译。根据4.12节中的表(第147页)指出它的问题在哪里?应该如何修改?

C++ Primer(第5版) 练习 4.23

练习 4.23 因为运算符的优先级问题,下面这条表达式无法通过编译。根据4.12节中的表(第147页)指出它的问题在哪里?应该如何修改?

cpp 复制代码
string s = "word";
string p1 = s + s[s.size() - 1] == 's' ? "" : "s";
环境:Linux Ubuntu(云服务器)
工具:vim
代码块
cpp 复制代码
/*************************************************************************
	> File Name: ex4.23.cpp
	> Author: 
	> Mail: 
	> Created Time: Tue 06 Feb 2024 11:31:29 AM CST
 ************************************************************************/

#include<iostream>
using namespace std;

 int main(){
     string s = "word";
     string p1 = s + ((s[s.size() - 1] == 's') ? "" : "s");
     cout<<p1<<endl;

     return 0;
 }
解释

条件运算符级别较低,需要加括号

运行结果显示如下
相关推荐
凛_Lin~~2 分钟前
安卓 Java线程八股文 (线程、多线程、线程池、线程安全)
android·java·开发语言
C语言不精7 分钟前
c语言-优雅的多级菜单设计与实现
c语言·开发语言·算法
geekmice7 分钟前
thymeleaf处理参数传递问题
开发语言·lua
LNN20229 分钟前
Qt 5.8.0 下实现触摸屏热插拔功能的探索与实践(2)
开发语言·qt
董世昌4111 分钟前
箭头函数和普通函数有什么区别
开发语言·javascript·ecmascript
AI科技星13 分钟前
张祥前统一场论:引力场与磁矢势的关联,反引力场生成及拉格朗日点解析(网友问题解答)
开发语言·数据结构·经验分享·线性代数·算法
β添砖java14 分钟前
python第一阶段第八章文件操作
开发语言·python
-森屿安年-31 分钟前
二叉平衡树的实现
开发语言·数据结构·c++
脑极体33 分钟前
蓝河入海:Rust先行者vivo的开源之志
开发语言·后端·rust·开源
foxsen_xia34 分钟前
go(基础01)——协程
开发语言·算法·golang