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;
 }
解释

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

运行结果显示如下
相关推荐
yngsqq5 分钟前
多段线顶点遍历技巧(适用闭合和非闭合)
开发语言
宇木灵8 分钟前
C语言基础-五、数组
c语言·开发语言·学习·算法
楼田莉子9 分钟前
Linux学习:线程的同步与互斥
linux·运维·c++·学习
xyq202433 分钟前
空对象模式
开发语言
liulun1 小时前
C++ WinRT中的异步
c++·windows
王老师青少年编程2 小时前
2020年信奥赛C++提高组csp-s初赛真题及答案解析(阅读程序第1题)
c++·题解·真题·初赛·信奥赛·csp-s·提高组
不懒不懒2 小时前
【Python办公自动化进阶指南:系统交互与网页操作实战】
开发语言·python·交互
会周易的程序员2 小时前
cNetgate插件架构设计详解 动态库 脚本二开lua, python, javascript
javascript·c++·python·物联网·lua·iot
普通网友2 小时前
C++与Rust交互编程
开发语言·c++·算法
游乐码2 小时前
c#静态类和静态构造函数
开发语言·c#