C语言学习2

运算符优先级和结合性:

在这里插入图片描述优先级:共有15级
结合性:分为两种,左结合(自左向右)、右结合(自右向左)
注意点:
1、运算符的功能对应
2、对运算量的关系(对应的个数、类型)
3、多个运算符间的优先级
4、结合方向
5、结果的输出类型
算数运算符:+ - * / %
注意:对于/ 两边为整数结果为整数 有一边为实数结果为实数
数据转换:
规则1:char、short→ int、float→double 结果类型与转换后的类型相同
规则2:相同类型(除char、short、float型外)的操作数作算术运算的结果为同一类型。
规则3:不同类型,先按规则1转换,还有不同类型,则再按低级别→高级别,其结果类型与转换后的类型相同。
char < short ≤ int ≤ unsigned ≤ long ≤ unsigned long < float < double
若整数,双目运算符的两边一个是有符号另一是无符号数。转换规则如下:
首先看,有符号数的类型能否表示无符号数类型的所有取值范围,若可以,则都变成有符号数的类型;否则都变成无符号数的类型。转 换的方法和赋值转换的规则相同。
unsigned int +short/char/int/>>>unsigned int
unsignef char 或unsigned short会转北为int
输出转换规则:
printf把char、short提升到int型,再传给printf。把float提升到double类型再传给printf
在用%x输出十六进制数时如果十六进制数最高位为1则前面会补ff
比如0x34 输出为34 如果是0x80则输出为0xffffff80
printf函数从右向左输出

自增自减运算符++ --:
种类:1、前缀:++x,–x;
2、后缀:x++,x–;
注意:不能用于常量,函数返回值,表达式

逻辑运算符: ! && ||
在C语言中,0表示假,非0表示真
条件表达式:
形式:表达式1?表达式2:表达式3
意义:若表达式1为真,则运行表达式2;反之运行表达式3

逗号表达式:
形式:表达式1,表达式2,…表达式n;
运行顺序:从左向右,先执行完左边的表达式,再执行右边的表达式
逗号表达式的值为表达式n的值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值