打印
[PIC®/AVR®/dsPIC®产品]

C语言的三目运算符

[复制链接]
373|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yiy|  楼主 | 2024-4-17 23:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
C语言中的三目运算符是一种条件表达式,通常用于在一个表达式中根据条件选择不同的值。它的一般形式是:
condition ? expression1 : expression2

解释如下:

condition 是一个条件表达式,它可以是任何能够产生布尔值(true或false)的表达式。
如果condition的结果为真(true),则整个表达式的值为expression1的值。
如果condition的结果为假(false),则整个表达式的值为expression2的值。
三目运算符的主要优点是它的简洁性和灵活性,使得可以在单行代码中进行条件判断。例如:

int a = 10;
int b = 20;
int max = (a > b) ? a : b;
在这个例子中,如果a大于b,则max的值将为a,否则为b

使用特权

评论回复
沙发
yiy|  楼主 | 2024-4-17 23:08 | 只看该作者
除了基本的条件选择外,三目运算符还可以在一些情况下用于更复杂的逻辑。以下是一些高级用法示例:

嵌套使用:可以在三目运算符内部嵌套其他三目运算符,从而实现更复杂的条件逻辑。
int a = 10;
int b = 20;
int max = (a > b) ? a : ((b > 30) ? b : 30);

在这个例子中,如果a大于b,则max的值将为a;否则,如果b大于30,则max的值为b,否则为30。

使用特权

评论回复
板凳
yiy|  楼主 | 2024-4-17 23:08 | 只看该作者
返回值的选择:可以使用三目运算符来选择不同的返回值。
int absolute(int x) {
    return (x >= 0) ? x : -x;
}

使用特权

评论回复
地板
yiy|  楼主 | 2024-4-17 23:09 | 只看该作者
这个函数返回x的绝对值。如果x是非负数,则返回x本身,否则返回x的相反数。

使用特权

评论回复
5
yiy|  楼主 | 2024-4-17 23:09 | 只看该作者
简化赋值表达式:可以使用三目运算符简化某些赋值表达式的编写。
int x = (condition) ? value1 : value2;

这个简单的语句根据条件选择value1或value2并将其赋值给x。

使用特权

评论回复
6
dongnanxibei| | 2024-4-25 22:49 | 只看该作者
只有二选一的,还是很推荐用这个的。

使用特权

评论回复
7
xuanhuanzi| | 2024-4-26 14:57 | 只看该作者
简单的二选一是比较适合的,复杂的就要推荐用if else 了,这样看着更清晰明了。

使用特权

评论回复
8
幸福小强| | 2024-4-29 23:05 | 只看该作者
三目可以代替if  else

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

yiy

92

主题

1708

帖子

4

粉丝