C/C++面试中经常让计算一个表达式的值

计算一个表达式的值的时候,一定要具有以下的基础知识。

1、
在这里插入图片描述
2、同一优先级的运算符,运算次序由结合方向所决定。
简单记就是:! > 算术运算符 > 关系运算符 > && > || > 赋值运算符
3、
同一优先级的运算符,运算次序由结合方向所决定。
口诀:
(1)
括号成员第一; //括号运算符 成员运算符. ->
(2)全体单目第二; //所有的单目运算符比如++、 --、 +(正)、 -(负) 、指针运算*、&
(3)乘除余三,加减四; //这个"余"是指取余运算即%

(4)移位五,关系六; //移位运算符:<< >> ,关系:> < >= <= 等

(5)等于(与)不等排第七; //即== 和!=

(6)位与异或和位或; //这几个都是位运算: 位与(&)异或(^)位或(|)

(7)"三分天下"八九十;

(8)逻辑或跟与; //逻辑运算符:|| 和 &&

十二和十一; //注意顺序:优先级(||) 底于 优先级(&&)

(9)条件高于赋值, //三目运算符优先级排到13 位只比赋值运算符和","高

(10)逗号运算级最低! //逗号运算符优先级最低
4、
等级规则
在这里插入图片描述
转换规则:
在这里插入图片描述
如:下面代码输出什么

#include<stdio.h>
int main( )
{
unsigned int a = 6;
int b = -20;
(a + b > 6) ? printf(">6") : printf("<=6");
return 0;
}

运行结果:>6
因为signed int 转换成了unsigned int。转换过程见另一个博文:C语言的int类型与unsigned int运算的问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值