条件运算符
条件运算符是 C 语言中唯一的一种三目运算符。三目运算符代表有三个操作数;双目运算符代表有两个操作数,如逻辑与运算符就是双目运算符;单目运算符代表有一个操作数,如逻辑非运算符就是单目运算符。运算符也称操作符。三目运算符通过判断问号之前的表达式的真假,来确定整体表达式的值,如下例所示,如果 a>b 为真,那么三目表达式整体的值为 a,所以 max 的值等于 a,如果 a>b 为假,那么三目表达式整体的值为 b,所以 max的值等于 b。
#include <stdio.h>
int main() {
int a,b,max;
while(scanf("%d%d",&a,&b))
{
max=a>b?a:b;
//a 和 b 中较大的那个数是?
printf("max=%d\n",max);
}
return 0;
}
逗号运算符
逗号运算符的优先级最低,逗号表达式的整体值是最后一个表达式的值。
#include <stdio.h>
int main() {
int i,j;
i=10;
j=1;
if(i,j-1)//并不会进入 if,逗号表达式整体的值是最后一个表达式的值
{
printf("if excute\n");
}
//逗号表达式的常见使用场景,for 的表达式 1 初始化多个变量用的较多
for(i=0,j=1;i<10;i++)
{
}
return 0;
}