C语言操作符优先级
C语言操作符优先级
|
优先级 |
运算符 |
含 义 |
要求运算 对象的个数 |
结合方向 |
|
1 |
() [] -> . |
圆括号 下标运算符 指向结构体成员运算符 结构体成员运算符 |
自左至右 |
|
|
2 |
! |
逻辑非运算符 |
1 (单目运算符) |
自右至左 |
|
~ |
按位取反运算符 |
|||
|
++ |
自增运算符 |
|||
|
-- |
自减运算符 |
|||
|
- |
负号运算符 |
|||
|
(类型) |
类型转换运算符 |
|||
|
* |
指针运算符 |
|||
|
& |
地址与运算符 |
|||
|
sizeof |
长度运算符 |
|||
|
3 |
* / % |
乘法运算符 除法运算符 求余运算符 |
2 (双目运算符) |
自左至右 |
|
4 |
+ - |
加法运算符 减法运算符 |
2 (双目运算符) |
自左至右 |
|
5 |
<< >> |
左移运算符 右移运算符 |
2 (双目运算符) |
|
|
6 |
< <= > >= |
关系运算符 |
2 (双目运算符) |
自左至右 |
|
7 |
== != |
等于运算符 不等于运算符 |
2 (双目运算符) |
自左至右 |
|
8 |
& |
按位与运算符 |
2 (双目运算符) |
自左至右 |
|
9 |
^ |
按位异或运算符 |
2 (双目运算符) |
自左至右 |
|
10 |
| |
按位或运算符 |
2 (双目运算符) |
自左至右 |
|
11 |
&& |
逻辑与运算符 |
2 (双目运算符) |
自左至右 |
|
12 |
|| |
逻辑或运算符 |
2 (双目运算符) |
自左至右 |
|
13 |
? : |
条件运算符 |
3 (三目运算) |
自右至左 |
|
14 |
= += -= *= /= %= >>= <<= &= ^= |= |
赋值运算符 |
2 |
自右至左 |
|
15 |
, |
逗号运算符 |
自左至右 |
运算符优先级记忆方法:

C语言操作符优先级的更多相关文章
- 被C语言操作符优先级坑了
今天有一个枚举的题目的代码是这样的: 重点在于maxXor这个函数的实现,枚举两个数字,其中maxr保存了最大值的 i 异或 j , 可是这个程序执行结果大大出乎意外-_-. 然后就把 i 异或 j ...
- C++ 语言操作符的优先级
cppreference.com -> C++ 操作符优先级 C++ 操作符优先级 优先级 操作符 1 () [] -> . :: ! ~ ++ ...
- 一道c语言运算符优先级问题
一道c语言运算符优先级问题 #include <iostream> using namespace std; int main() { char test[] = {"This ...
- C语言操作符
C语言操作符的分类: 算术操作符 逻辑运算符 位操作符 赋值操作符 单目操作符 关系操作符 条件操作符 逗号表达式 数组下标引用 函数调用 结构体成员使用 大体上,C语言的操作符具体就这么些, ...
- C语言运算符优先级及结合性
今天去翻了下C语言运算符的优先级和结合性,发现当初学习的时候就没认真记住,惭愧.发现一篇讲得不错的文章,编辑了下转来供以后翻阅. C语言运算符优先级表(由上至下,优先级依次递减) 运算符 结合性 () ...
- C语言 运算符优先级和结合方向
运算符优先级和结合方向 初级运算符( ).[ ].->.. 高于 单目运算符 高于 算数运算符(先乘除后加减) 高于 关系运算符 高于 逻辑运算符(不包括!) 高于 条件运算 ...
- C语言运算符优先级总结
一 写在开头1.1 本文内容本文内容为C语言中运算符优先级的总结.转载于:https://blog.csdn.net/huangblog/article/details/8271791,感谢原作者的付 ...
- C语言运算符优先级和ASCII表
1. C语言运算符优先级及结合性 优先级 运算符 名称或含义 使用形式 结合方向 说明 1 [] 数组下标 数组名[常量表达式] 左到右 -- () 圆括号 (表达式)/函数名(形参表) -- . 成 ...
- C++操作符优先级带来的错误
在刷LeetCode题目:190. 颠倒二进制位:颠倒给定的 32 位无符号整数的二进制位时,可以利用左移和右移操作符来实现数字翻转: 错误解法: class Solution { public: u ...
随机推荐
- nodejs socket
server.js var net = require('net'); var clientList = []; var HOST = '127.0.0.1'; var PORT = 6969; va ...
- iOS开发之网络编程--2、NSURLSessionDownloadTask文件下载
本文内容大纲: 1.回顾NSURLSessionTask 2.NSURLSessionDownloadTask大文件之block下载 3.NSURLSessionDownloadTask大文件之代理方 ...
- EF+MVC+cod First项目性能优化总结
1.EF:this.Configuration.UseDatabaseNullSemantics = true; //关闭数据库null比较行为 2.实体必填字段要加:[Required]属性,可定长 ...
- Effective Java 70 Document thread safety
Principle The presence of the synchronized modifier in a method declaration is an implementation det ...
- Effective Java 72 Don't depend on the thread scheduler
Principle Any program that relies on the thread scheduler for correctness or performance is likely t ...
- 连接Oracle远程数据库错误:ORA-12541,ORA-12514,ORA-01017的解决方法!
1.出现如下错误:ORA-12541:TNS:no listener,如下图所示: 错误原因是我们没有开启Listener监听器服务,解决方法是在服务中开启这个服务,如下图所示. 2.出现如下错误:O ...
- 深入剖析js命名空间函数namespace
在看阿里员工写的开源数据库连接池的druid的源代码时,发现了其中在jquery的原代码中又定义了一个命名空间的函数:$.namespace(),其代码如下: 网址为:https://github.c ...
- keepalived+LVS搭建高可用负载均衡系统
相关架构设置: 1)vip : 192.168.137.6 2)DS master ip : 192.168.137.8 3)DS backup ip : 192.168.137.9 4)RS 1 i ...
- QT添加程序图标及窗口图标
程序图标 材料准备 图标文件:*.ico文件,存放在源文件同一目录下,如"myapp.ico" 写入图标 向*.pro文件中,独立一行写入"RC_ICONS = *.ic ...
- 虚拟机centos6.5 --设置主机名
vi /etc/sysconfig/network #修改HOSTNAME后面的值,机器名 vi /etc/hosts #设置ip和机器名的对应关系 192.168.12.232 master 192 ...