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***u68514 小时前
PHP在电商中的WooCommerce
开发语言·php
冠希陈、14 小时前
PHP 过滤敏感词(含类库)
开发语言·php·内容敏感词
qq_4017004114 小时前
Qt Positioning 模块访问设备地理位置信息
开发语言·qt
1***s63214 小时前
C++移动语义优化
开发语言·c++
m5655bj14 小时前
使用 Python 高效复制 Excel 行、列、单元格
开发语言·python·excel
Murphy_lx15 小时前
C++ std_stringstream
开发语言·c++·算法
Mr.Winter`15 小时前
基于Proto3和单例模式的系统参数配置模块设计(附C++案例实现)
c++·人工智能·单例模式·机器人
v***870415 小时前
QoS质量配置
开发语言·智能路由器·php
Wpa.wk15 小时前
自动化测试环境配置-java+python
java·开发语言·python·测试工具·自动化
道一2315 小时前
C#获取操作系统版本号方法
开发语言·c#