c语言运算符括号里是什么意思?

作者&投稿:吴京 (若有异议请与网页底部的电邮联系)
~

C语言运算符,括号里面(---x)表示x的值减去1,相当于“x”变为“x-1”,括号外面“!”表示取反(非0数变为0,0变为1)。

除了常见的三大类,算术运算符、关系运算符与逻辑运算符之外,还有一些用于完成特殊任务的运算符,比如位运算符。



扩展资料


优先级,C语言中,运算符的运算优先级共分为15 级。1 级最高,15 级最低。 在表达式中,优先级较高的先于优先级较低的进行运算。而在一个运算量两侧的运算符 优先级相同时,则按运算符的结合性所规定的结合方向处理。

结合性:C语言中各运算符的结合性分为两种,即左结合性(自左至右)和右结合性(自右至左)。例如算术运算符的结合性是自左至右,即先左后右。如有表达式x-y+z 则y 应先与“-”号结合,执行x-y 运算,然后再执行+z 的运算。这种自左至右的结合 方向就称为“左结合性”。

而自右至左的结合方向称为“右结合性”。最典型的右结合 性运算符是赋值运算符。如x=y=z,由于“=”的右结合性,应先执行y=z 再执行x=(y=z)运算。C语言运算符中有不少为右结合性,应注意区别,以避免理解错误。

优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。所有的优先级中,只有三个优先级是从右至左结合的,它们是单目运算符、条件运算符、赋值运算符。其它的都是从左至右结合。

具有最高优先级的其实并不算是真正的运算符,它们算是一类特殊的操作。()是与函数相关,[]与数组相关,而->及.是取结构成员。

其次是单目运算符,所有的单目运算符具有相同的优先级,因此在我认为的 真正的运算符中它们具有最高的优先级,又由于它们都是从右至左结合的,因此*p++与*(p++)等效是毫无疑问的。

另外在C语言里,没有前置后置之分,因为++ -- 是右结合所以右侧优先运算,表现为 "操作数后置优先级比较高" 的假象,前置和后置的区分是因为运算符重载而后加入C++的

接下来是算术运算符,*、/、%的优先级当然比+、-高了。

参考资料来源:百度百科-C语言运算符




C语言运算符
一、前言 在嵌入式开发中,C语言因其丰富的运算符而备受青睐。这些运算符使得对硬件的操作变得更为灵活,这是其他语言难以比拟的。二、C语言运算符类别 C语言运算符种类繁多,主要分为以下几类:括号与结构体符号、单目、算术、移位、关系、位、逻辑、三目、赋值、逗号。括号与结构体符号包括括号()和[...

c语言特殊符号有哪些,能发我几个吗?
9. 赋值运算符(=、+=、-=、*=、\/=、%=、<>=、&=、^=、|=):用于赋值以及对变量进行运算。10. 条件运算符(?:):三元运算符,用于条件表达式。11. 指针运算符(&):用于获取变量的地址。12. 间接寻址运算符(*):用于指针指向的地址中的值。以上是C语言中常见的一些特殊符号,了解和...

C语言程序中的符号:(){}#?\/分别代表什么作用?
() 函数运算符和运算符级别改变用 {} 语句括号和函数体 编译预处理指令标记(预处理中还可以用于字符连接用)? 条件运算符中的条件 \/ 除法符号,两边都是整数时,得到的结果为整数除(去掉了小数)

C语言运算符优先级--超级详细大全
运算符优先级在C语言中占据重要地位,以下将详细介绍其优先级。首先,括号运算符()、数组下标运算符[]、成员访问运算符->以及成员访问运算符.的优先级最高。其次,单目运算符的优先级高于算数运算符,而算数运算符的优先级高于关系运算符。在关系运算符之后,逻辑运算符的优先级依次降低,注意,逻辑运算...

C语言中,比如z=(x%y,x\/y)括号的运算什么意思,能解释下吗谢谢
x%y的意思是取余数。比如100\/3=33...1 ,那么x%y=1.x\/y的意思就是相除。

c语言的符号集包括哪三种
6.条件运算符 这是一个三目运算符,用于条件求值(?:)。7.逗号运算符 用于把若干表达式组合成一个表达式(,)。8.指针运算符 用于取内容(*)和取地址(&)二种运算。9.求字节数运算符 用于计算数据类型所占的字节数(sizeof)。10.特殊运算符 有括号(),下标[],成员(→,.)等几种。

大括号,中括号,小括号分别是什么?
适用语言: Action Script2.0以上 Flash Player版本: Flash Player7以上 用法代码:数组名称=[数组元素0,数组元素1,…数组元素N]数组名称[数组索引]=值 对象名称[对象属性名称]用法说明:用法一:创建数组时,使用数组访问运算符(即中括号)括住元素。一个数组可以包含各种类型的元素。用法二:用中括号...

C语言中! x是什么运算符!
!x的意思就是x!=0,当X=0时执行while循环!即取反,当X!=0时不执行,!=组合在一起是逻辑运算符“不等于”。!x--这个表示对x作“非”运算。C语言运算符列表:1、优先级1级 结合方向左结合(自左至右)()圆括号 []下标运算符 ->指向结构体成员运算符 .结构体成员运算符(请注意它是一...

C语言中有 ^ 这个运算符吗?
有的,“^”是“位异或”。另外运算符号还有:()、 []、 -> 、 .、!、 ++、 --:圆括号、方括号、指针、成员、逻辑非、自加、自减 ++ 、 -- 、 * 、 & 、 ~ 、!:单目运算符 < 、 <= 、 > 、 >=:关系运算符

C语言里面的运算符优先顺序如何?
(以下说明中,对传统的1级和2级做了细化,1和2对应传统1级,3和4对应传统2级,所以细化说明共有17级。)1、基本表达式 1级 基本表达式(Primary expressions),主要是用于运算符之间,做为运算数。标识,常量,字符串文字量,优先级提升表达式最优先执行。优先级提升表达式是指圆括号包围的表达式,如...

周宁县13558003746: C语言中的“小括号运算符”是个什么东西 -
游亚盐酸: 小括号是一种符号 但不是运算符号. 它是用来限制优先级的. 运算符有+-*/

周宁县13558003746: 求大神指点第一点括号里的意思a&&b的那个 -
游亚盐酸: C语言使用0代表逻辑假,非0代表逻辑真.&&是逻辑与运算符,只有两边同时为逻辑真时,结果才是逻辑真.对于a&&b这种表达式,如果a是逻辑假(0)的话,那不用计算b的值,就可以确定整个表达式的值为逻辑假了(同时为真,结果为真;有一个为假,结果就为假嘛).这就是编译器的一个优化了,只有当a是逻辑真(非0)的时候,再去计算b的值.这就是括号里面那句话的意思了.

周宁县13558003746: C语言算法里这两个符号是什么意思?? -
游亚盐酸: 首先b>3会返回一个布尔值true或false,&&是与,属于逻辑运算符,必须前后两个都是true才返回true,否则返回false.所以当a是null的时候就不执行循环

周宁县13558003746: 编程中的括号,逗号之类的在什么情况下用? -
游亚盐酸: C语言符号全集合 运算符的种类 C语言的运算符可分为以下几类: 1.算术运算符 用于各类数值运算.包括加(+)、减(-)、乘(*)、除(/)、求余(或称模运算,%)、自增(++)、自减(--)共七种. 2.关系运算符 用于比较运算.包括大...

周宁县13558003746: c语言逻辑运算符怎么理解? -
游亚盐酸: C语言中的逻辑运算符使用规则如下: 1、逻辑运算符是根据表达式的值来返回真值或是假值.在C语言中没有专门的真值和假值,认定非0为真值,0为假值. 2、逻辑运算符运算规则:|| 或:两个条件中,只要有一个成立,则结果就成立;&& ...

周宁县13558003746: &在c语言中什么意思 -
游亚盐酸: 主要有两个意思: 1. 取地址符,用在指针表达式或输出变量地址时 例如 int a; &a就是表示变量a在内存中地址 2. 二进制位与位运算符 1&1=1 0&0=0 拓展资料:C语言主要特点: 1. C语言是高级语言.它把高级语言的基本结构和语句与低级...

周宁县13558003746: ()在c语言中是什么意思 -
游亚盐酸: 多是里面加条件:如for(),while(); 然后就是算数运算中的作用:(1+1)*3,改变运算顺序

周宁县13558003746: C语言运算符都有那些? -
游亚盐酸: 运算符的种类C语言的运算符可分为以下几类: 1.算术运算符 用于各类数值运算.包括加(+)、减(-)、乘(*)、除(/)、求余(或称模运算,%)、自增(++)、自减(--)共七种. 2.关系运算符 用于比较运算.包括大于(>)、小于...

周宁县13558003746: C语言中&是什么意思?a&b怎么理解? -
游亚盐酸: &: 在C语言中有两种意思,一种是取地址符,是单目运算符;另一种是位运算符,表示“按位与”,是双目运算符. a&b表示啊a和b按位进行与运算. &后面是个变量.每个变量对应一块存储空间.每个存储空间有一个编号,也就是地址,&...

周宁县13558003746: (1,2,3)==(3,3,3)在编程c语言是什么意思??急急急 -
游亚盐酸: 逗号表达式的值为最后一个值,也就是说左边括号里的值是3,右边括号里的值也是3.==是关系运算符,左右相等返回1,否则返回0.所以(1,2,3)==(3,3,3)的值是1

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网