C语言条件运算符(?:)的使用

(个人临时总结,知识点不完全,仅供参考,不喜轻喷)

条件运算符(?:)需要三个操作数,所以也称三元运算符

操作式如下:

【条件】? 【表达式1】:【表达式2】

根据条件的计算结果,决定要计算两个表达式中的哪一个

如果条件为true(即计算结果不为0),计算表达式1;条件为false,计算表达式2。所得出的值就是整个表达式的结果。

举一个在赋值运算中的常见例子:假设给一个数组赋值,下标为偶数的赋值true,下标为奇数的赋值false

如果用if-else语句:

for (int i = 0; i <= 49; i++)
{
	if (i % 2 == 0) { vector[i] = true;}
	else { vector[i] == false; }
}

用(?:)运算符:

for (int i = 0; i <= 49; i++)
	{
		values[i]=(i%2==0)?true : false;
	}

可以看到,使用运算符后代码精炼不少。

对于这类“二选一”的问题,用上三元运算符可以有效减少代码量,同时也让代码更加美观精炼。

在所有运算符中,只有赋值和逗号运算符的优先级比三元运算符低

所以这样的语句,前方的"i>0"条件不用加括号

judge = i>0 ? true : false;

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值