三目运算符

一、语法?

复制代码
表达式 ? 结果1 : 结果2;

翻译成人话

如果 表达式 成立 → 返回 结果 1 否则 → 返回 结果 2

二、代码里的这句:

复制代码
return x > y ? x : y;

等价于

复制代码
if (x > y) {
    return x;
} else {
    return y;
}

意思就是:x 比 y 大就返回 x,否则返回 y → 就是取最大值。

三、例子

复制代码
int a = 5;
int b = 3;

// 用法1:赋值
int max = a > b ? a : b; 
// 因为 5>3 成立 → max = 5

// 用法2:直接输出
printf("%d", a > b ? a : b); 
// 输出 5

四、通用规则(必看)

  1. 问号前面是判断条件 x > ya == bscore >= 60 都可以
  2. 问号后面是两个选择 条件真 → 选冒号左边 条件假 → 选冒号右边
  3. 整个式子最终会得到一个值

五、更多例子

复制代码
// 1. 判断成年人
int age = 20;
char* result = age >= 18 ? "成年" : "未成年";

// 2. 取最小值
int min = x < y ? x : y;

// 3. 分数及格判断
char c = score >= 60 ? 'P' : 'F';

六、什么时候用?

  • 简单二选一的时候用
  • 代替短短的 if-else
  • 让代码更简洁、一行写完

总结

x > y ? x : y= 如果 x 大,就给我 x,否则给我 y

相关推荐
乘风gg5 小时前
多 Agent 不是万能的!搞懂这 5 个原则,少走 1 年弯路!
前端·agent·ai编程
猩猩程序员5 小时前
Vercel 推出 Agent 框架 Eve:让 AI Agent 像写 Web 应用一样简单
前端
爱读源码的大都督6 小时前
Claude Code源码分析(三):为什么系统提示词中需要有tools呢?
前端·人工智能·后端
爱勇宝6 小时前
Claude Code 被曝暗藏“隐形检测”代码:封代理不是最可怕的,可怕的是你根本不知道它在干什么
前端·后端·程序员
小牛不牛的程序员6 小时前
我用 Claude Code 半天撸完了一个完整网站,AI 编程到底提升了多少效率?
前端
东风破_6 小时前
JavaScript 面试常考的字符串算法:从反转字符串到回文判断
前端·javascript
ITOM运维行者6 小时前
从零搭建企业级服务器监控体系:踩坑实录与架构设计
前端·后端
monologues6 小时前
深入 Vue 3 源码:响应式系统的精妙设计与编译优化
前端
hunterandroid6 小时前
Paging 3 分页:从手动分页到声明式加载
前端
用户4099322502126 小时前
Vue状态管理入门第四章:组合式store和SSR风险
前端·vue.js·后端