🎸
作者:爱弹吉他的小奔同学
🎸
专栏:《C语言》
🎸
仓库:gitee(所有的代码都在这个仓库里面)
🎸
如果感觉学累了,那么就看一个视频放松一下吧,猜猜点进去你会看到什么😜(视频)
🎸
我向往以后悠闲的生活,但现在的我们正处于需要努力的年华
点赞收藏关注啦啦啦啦啦
整型提升和算术转换
🎸表达式求值
表达式求值的顺序一部分是由操作符的优先级和结合性决定的
那么什么是优先级,什么是结合性呢?
优先级就是这样
2+6/2
/的优先级大于+的优先级,所以我们运算的顺序:
6/2=3
2+3=5
结合性就是这样
2+3+4
+和+优先级相同,求值的顺序就取决于结合性,+的结合性是从左向右计算,运算顺序:
2+3=5
5+4=9
🎸隐式类型转换
隐式就是偷偷地,也就是偷偷地进行类型转换,明面上是看不见的
整型提升就是隐式类型转换
什么是整型提升呢?
C的整型算术运算总是至少以缺省整型类型的精度来进行的(缺省就是默认的意思)
也就是我们在运算过程中,会把小于int类型大小的char,short这些类型提升为int类型大小
上例子
int main()
{
char a = 5;
char b = 126;
char c = a + c;
printf("%d", c );
}
变量a,b,c这些都达不到int类型大小,只有1个字节,那就整型提升,提升为4个字节
那么如何进行整型提升呢?
整形提升是按照变量的数据类型的符号位来提升的
🎸整型提升
先了解一下整型提升的例子(整型提升的前提是要参与运算)