一、运算符的优先级和结合性

1,优先级

运算符一览表中,运算符越靠上,优先级越高。

2,结合性

假如用O表示需要两个操作数的双目运算符,那么对于表达式aObOc:

左结合运算符会将表达式解释为  (aOb)Oc      【左结合性】

右结合运算符会将表达式解释为   aO(bOc)     【右结合性】

总结:遇到优先级相同的运算符时,结合性指明了表达式应从左往右运算还是从右往左运算。

二、运算符一览表

优先级

运算符

形式

名称

结合性

1

()

x(y)

函数调用运算符

1

[]

X[y]

下标运算符

1

.

x.y

.运算符(句点运算符)

1

->

x->y

->运算符(箭头运算符)

1

++

x++

后置递增运算符

1

--

y--

后置递减运算符

2

++

++x

前置递增运算符

2

--

--y

前置递减运算符

2

sizeof

sizeof x

sizeof运算符

2

&

&x

单目运算符&(取址运算符)

2

*

*x

单目运算符*(指针运算符)

2

+

+x

单目运算符+

2

-

-x

单目运算符-

2

~

~x

~运算符(按位求补运算符)

3

!

!x

逻辑非运算符

3

()

(x)y

类型转换运算符

4

*

x * y

双目运算符*

4

/

x / y

/运算符

4

%

x % y

%运算符

5

+

x + y

双目运算符+

5

-

x - y

双目运算符-

6

<<

x << y

<<运算符

6

>>

x >> y

>>运算符

7

<

x < y

<运算符

7

<=

x <= y

<=运算符

7

>

x > y

>运算符

7

>=

x >= y

>=运算符

8

==

x == y

==运算符

8

!=

x != y

!=运算符

9

&

x & y

按位与运算符

10

^

x ^ y

按位异或运算符

11

|

x | y

按位或运算符

12

&&

x && y

逻辑与运算符

13

||

x || y

逻辑或运算符

14

? :

x ? y : z

条件运算符

15

=

x = y

基本赋值运算符

15

+= -= *= /= <<= >>= &= ^= |=

复合赋值运算符

16

,

x , y

逗号运算符

C语言中的运算和运算符的更多相关文章

  1. Javascript学习2 - Javascript中的表达式和运算符

    原文:Javascript学习2 - Javascript中的表达式和运算符 Javascript中的运算符与C/C++中的运算符相似,但有几处不同的地方,相对于C/C++,也增加了几个不同的运算符, ...

  2. Sql Server中的谓词和运算符

    谓词和运算符配合使用是我们得到理想数据的最佳途径. 一.浅谈谓词 谓词的概念:一个运算结果为True.False或Unknown的逻辑表达式.它的运用范围有:where子句.Having子句.Chec ...

  3. C语言中复数运算及调用blas,lapack中复数函数进行科学计算

    C语言中常用的数据类型主要int, float ,double ,char 等,但在科学运算中复数扮演着重要角色.这里讲下C语言中的复数运算以及如何调用blas,lapack库中的复数函数来进行科学计 ...

  4. javascript 核心语言笔记 4 - 表达式和运算符

    表达式(expression)是 JavaScript 中的一个短语(phrases),JavaScript 解释器会将其计算(evaluate)出一个结果.程序中的常量.变量名.数组访问等都是表达式 ...

  5. C语言中 移位操作运算

    移位规律: 左移时总是移位和补零.右移时无符号数是移位和补零,此时称为逻辑右移;而有符号数大多数情况下是移位后补最左边的位(也就是补最高有效位),移几位就补几位,此时称为算术右移.(其实跟扩展逻辑一样 ...

  6. 教学日志:javaSE-java中的数据类型和运算符

    一.java中的标识符 /* 标识符的命名规范: 硬性要求: 1.必须以字母._下划线.美元符$开头 2.其它部分可以是字母.下划线"_".美元符"$"和数字的 ...

  7. C语言中位运算异或“∧”的作用

    1.概念异或运算符"∧"也称XOR运算符.它的规则是若参加运算的两个二进位同号,则结果为0(假):异号则为1(真).即 0∧0=0,0∧1=1, 1^0=1,1∧1=0.运算    ...

  8. 2、JS中的表达式和运算符

    一.表达式 1.原始表达式:2.14,“test”,true/false,null……复合表达式:10*20…… 2.数组.对象的初始化表达式:new Array(1,2),[1,undefined, ...

  9. java语言基础(变量和运算符)

    java八大基本数据类型: 整型{   int(整型)    short(短整型)   long(长整型)} 浮点型{ float(浮点型)   double(双精度)} 布尔{boolean}   ...

随机推荐

  1. Shell(6): 多线程操作及线程数

    任务需要:当我需要对一个文件夹中的文件,分别压缩的时候: 原始的代码: #!/usr/bin/shell function getdir(){ for element in `ls $1` do #e ...

  2. iframe自适应当前页面高度

    <style type="text/css"> *{margin:0;padding:0;list-style-type:none;} </style> & ...

  3. 内部排序比较(Java版)

    内部排序比较(Java版) 2017-06-21 目录 1 三种基本排序算法1.1 插入排序1.2 交换排序(冒泡)1.3 选择排序(简单)2 比较3 补充3.1 快速排序3.2 什么是桶排序3.3 ...

  4. go exec:exit status 64

    接上一篇,找到了查看未读邮件个数方法,需要用go来执行doveadm命令,于是考虑使用go exec包 但是代码写好了之后一直报错:exit status 64,意思是选项错误,但是明明所有选项都是o ...

  5. 【转】asp.net中@page指令的属性Inherits、Src、CodeBehind区别

    Inherits.Src.CodeBehind 在 ASP.NET 中使用代码隐藏方法来设计Web 窗体,可使页代码能够更清晰地从 HTML 内容中分离到完全单独的文件中. 通常一个 @page 指令 ...

  6. ubuntu18安装ubuntu kylin软件中心

    Install ubuntu-kylin-software-center Installing ubuntu-kylin-software-center package on Ubuntu 14.04 ...

  7. [转]ExtJS3.0与KindEditor4.1.2整合

    原文地址:http://blog.csdn.net/resigshy/article/details/7937021 ExtJS与KindEditor整合的方式. /** * 将KindEditor4 ...

  8. IBatis批量插入数据

    IBatis插入注意,数据量比较多的花,需要分批插入,策略是dao里面控制插入批次,mapper里面批量插入即可 @Override public Long insertBatch(List<W ...

  9. Android——Fragment实例精讲——底部导航栏+ViewPager滑动切换页面

    说明: 实现效果: 1- 用ViewPager实现Fragmen之间的切换 2- 底部用RadioGroup实现,更方便的实现图片和字体颜色的改变,更方便的通过RadioButton的点击事件来控制页 ...

  10. Android——黑名单管理(二)

    说明:多加一点完善 1.在操作类 DAO 将连接数据库也放到了构造方法中(错误),加删除全部的方法 2.主界面增加了姓名一栏,用layout文件将对话框分离出来 3.删除加确认提示 4.加删除全部按钮 ...