首页 / 办公指南 / 三目运算符

图片名称

运算符是一种比较特殊的函数类型,在一个表达式里面,可能会有很多不一样的运算符连接起来,而运算符的不同结合顺序就可以得出不同的结果,很多时候还会出现运算的错误,这个主要是忽视了运算符优先级的问题,也就是说,在表达式里面含有多种运算的时候,是需要注意运算的顺序的,那么运算符优先级是怎样的呢?下面福昕知翼就来说说并做C语言运算符优先级大全介绍。 运算符优先级是怎样的?优先级与求值顺序无关。如a+b && b*c,虽然*优先级最高,但这个表达式求值顺序是从左到右。优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。相同优先级中,按结合性进行结合。大多数运算符结合性是从左到右,只有三个优先级是从右至左结合的,它们是单目运算符、条件运算符、赋值运算符。基本的优先级需要记住:指针最优,单目运算优于双目运算。如正负号。先算术运算,后移位运算,最后位运算。请特别注意:1逻辑运算最后结合。 C语言运算符优先级大全运算符优先级最高级:出现同级别运算符时的结合方向是从左往右(下面级别没写结合顺序时,默认是从左往右)。( )圆括号;[ ]下标运算符号;->指向结构体成员运算符;.结构体成员运算符;第二级:!、~、++、--、-、(类型)、*、&、sizeof。这一级都是单目运算符号,这一级的结合方向是从右向左。比如出现*p++,这时*和++同级别,先算右边,再左边。所以*p++等价于*(p++),而不是(*p)++。第三级:+、-、*、/、%这一级都是算术运算符,结合顺序和数学学习中一致的,先乘除取余数,后加减。第四级:>这是左移、右移运算符,位运算时可能需要用到。第五级:、>=、!=、==这些运算符也称为关系运算符,其中、>=高于!=、==。第六级:&、^、|这三个符号也是位运算符号,其中内优先级,&>^>|。第七级:&&、||逻辑与&&优先级大于逻辑或||。第八级:? :也称为条件运算符号,是C语言中唯一的一个三目运算符,结合顺序是从右往左。第九级:=、+=、-+、*=、/=、%=这些运算符也叫做赋值运算符,除此之外,>>=、最低级:,逗号运算符也称为顺序求值运算符,在C语言中,运算级别最低。 运算符优先级是怎样的?通过以上的介绍,我们已经对运算符优先级的问题有了一定的了解,大家在做表达式的运算的时候,就需要注意优先级的顺序问题,这样才能得出正确的答案,同时对于C语言运算符的优先级问题,也需要认真的了解一下,如果有疑问的话,可以来福昕知翼网站咨询。