C语言基础——运算符优先级
2018-03-10 16:20
253 查看
一、今天我们来探讨一下C语言中运算符的优先级,这对我们编写程序和判断程序时候很重要
从上往下 运算符优先级依次降低
1.括号 以及 .(结构体变量运用成员运算符) ->(结构体指针引用成员运算符)
2.单目运算符: ! ~ ++ -- &(取地址符) *(取内容) sizeof()
3.算数运算符: * / %
+ -
4.位运算符: << >>
5.关系运算符: >= > < <=
== !=
6.位运算符:& ^ |
7.逻辑运算符: && ||
8.条件运算符: ?:
9.(复合)赋值运算符: = += -= ....
10.逗号运算符: ,
二、左结合(从右向左运算):(复合)赋值运算符、逻辑非、取反(~ )、前置自增减运算符
右结合(从左向右运算)
注意逗号运算符的用法:
带有括号的表达式,先从表达式1开始计算,依次类推,最终表达式n的值是整个表达式的值
不带有括号的表达式,从表达式1开始计算,依次类推 int a,b;
int c = (a = 10,b = 30, a= a+b,b = a+b);// c = 70
b = a = 10,b = 30, a= a+b;// b = 30
从上往下 运算符优先级依次降低
1.括号 以及 .(结构体变量运用成员运算符) ->(结构体指针引用成员运算符)
2.单目运算符: ! ~ ++ -- &(取地址符) *(取内容) sizeof()
3.算数运算符: * / %
+ -
4.位运算符: << >>
5.关系运算符: >= > < <=
== !=
6.位运算符:& ^ |
7.逻辑运算符: && ||
8.条件运算符: ?:
9.(复合)赋值运算符: = += -= ....
10.逗号运算符: ,
二、左结合(从右向左运算):(复合)赋值运算符、逻辑非、取反(~ )、前置自增减运算符
右结合(从左向右运算)
注意逗号运算符的用法:
带有括号的表达式,先从表达式1开始计算,依次类推,最终表达式n的值是整个表达式的值
不带有括号的表达式,从表达式1开始计算,依次类推 int a,b;
int c = (a = 10,b = 30, a= a+b,b = a+b);// c = 70
b = a = 10,b = 30, a= a+b;// b = 30
相关文章推荐
- C语言基础复习之二--运算符优先级、结合方向自编口诀
- C语言基础:C语言指针(1) - 基本使用
- 黑马程序员------java语言基础
- 黑马程序员——Java语言基础上篇
- C语言基础之文件
- C语言基础之字符串
- java语言基础入门——变量、数据及常量的介绍
- C语言基础
- java与.net比较学习系列(2) 基础语言要素
- Java语言基础第十三天
- C语言基础 9 指针 字符串
- MySQL学习笔记_8_SQL语言基础复习
- c语言基础(二)之指针事例
- ios笔记--C语言基础笔记
- 寄存器(内存访问)07 - 零基础入门学习汇编语言19
- JavaScript语言基础9
- 汇编语言基础之九- 关于栈指针的规律性的总结
- 【第五章】Spring表达式语言 之 5.1 概述 5.2 SpEL基础 ——跟我学spring3
- 黑马程序员——java语言基础部分——学习盲点总结
- Java语言基础