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

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

运行结果显示如下
相关推荐
u***u68516 分钟前
PHP在电商中的WooCommerce
开发语言·php
冠希陈、19 分钟前
PHP 过滤敏感词(含类库)
开发语言·php·内容敏感词
qq_4017004135 分钟前
Qt Positioning 模块访问设备地理位置信息
开发语言·qt
1***s63238 分钟前
C++移动语义优化
开发语言·c++
m5655bj1 小时前
使用 Python 高效复制 Excel 行、列、单元格
开发语言·python·excel
Murphy_lx1 小时前
C++ std_stringstream
开发语言·c++·算法
Mr.Winter`1 小时前
基于Proto3和单例模式的系统参数配置模块设计(附C++案例实现)
c++·人工智能·单例模式·机器人
v***87041 小时前
QoS质量配置
开发语言·智能路由器·php
Wpa.wk2 小时前
自动化测试环境配置-java+python
java·开发语言·python·测试工具·自动化
道一232 小时前
C#获取操作系统版本号方法
开发语言·c#