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

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

运行结果显示如下
相关推荐
JJJennie77738 分钟前
Gemini 3.7 Flash 上线,Google 想让 AI 多干活
开发语言·javascript·ecmascript
wuyk5551 小时前
Python 第三章:列表 List
服务器·开发语言·python
Evand J2 小时前
【MATLAB例程,车联网7】CACC网联车辆协同控制:ACC对比、V2X时延丢包与队列稳定性,附例程下载链接
开发语言·matlab·车联网
要努力点2 小时前
Python入门第六课
开发语言·python
萧瑟余晖3 小时前
Java深入解析篇三十三之消息队列
java·开发语言
码匠许师傅3 小时前
【C++ 面试真题】聊聊 C++ 的序列容器
java·c++·面试
IT爱学堂3 小时前
尚硅谷Java+AI大模型应用开发革新版本 2025年3月
java·开发语言·人工智能
C++ 老炮儿的技术栈3 小时前
Qt5.9.1 Windows 完整开发环境搭建流程
开发语言·c++·windows·qt·编辑器·代码化
xcLeigh3 小时前
Go入门:无类型常量与类型常量的区别
服务器·开发语言·golang
泡沫冰@3 小时前
GO 语言基础
开发语言·算法·golang