在C语言中,“?”。“:”是什么意思?

2024-11-29 21:54:03
推荐回答(5个)
回答1:

1、意思:是条件运算符,条件运算符是C语言中唯一的三目运算符,就是说他有三个运算对象。

2、条件运算符的形式是“?:”由他构成的表达式称为条件表达式。形式为:表达式1?表达式2:表达式3。

运算符

表达式为:表达式1?表达式2:表达式3

先求解表达式1

若其值为真(非0)则将表达式2的值作为整个表达式的取值,

否则(表达式1的值为0)将表达式3的值作为整个表达式的取值。

例如:max=(a>b)?a:b

就是将a和b二者中较大的一个赋给max。

以上内容参考:百度百科-条件运算符

回答2:

?在语言中表示疑问,那么疑问来自于判断。

:在语言中表示判断的结果选择。

所以编程逻辑就是先进行判断,然后再进行选择。

例如,当a>b时,x=1否则x=0,可以写成x=a>b?1:0。

扩展资料: 

C语言运算符号:

比较特别的是,比特右移(>>)运算符可以是算术(左端补最高有效位)或是逻辑(左端补 0)位移。例如,将 11100011 右移 3 比特,算术右移后成为 11111100,逻辑右移则为 00011100。

因算术比特右移较适于处理带负号整数,所以几乎所有的编译器都是算术比特右移。

运算符的优先级从高到低大致是:单目运算符、算术运算符、关系运算符、逻辑运算符、条件运算符、赋值运算符(=)和逗号运算符。

关系运算符号 :== 、!=

回答3:

这两个符号可以连成一个三目运算符,可以用于比较两个数的大小。如(a>b)?a:b表示若a比b大,则选a,否则选b

回答4:

这是C语言的条件表达式
比如
max=(a>b)?a:b
相当于
if(a>b)max=a;
else max=b;

回答5:

如c=a>b?a:b;
表示如果a>b成立,则c=a;
如果a>b不成立,则c=b;