2016年12月17日学习总结----运算符

1、i++是先使用值,然后在使用结束后做自加,使用结束不是指i++之后,而是指遇到结束符号,比如“;”,举例,i初始值为2,num=(i++)+(i++)+(i++)+(i++);那么最终结果num为8,因为在遇到分号之前i都保持原值不变,结束后因为有四个i++,所以i要做四次自加,即i最终为6,i--类似。

2、++i是先做自加然后使用,不需要等到结束符,即出现++i立刻无条件i自加1,--i类似。

3、当++i,i++作为函数参数时,转化为具体值,即将当前i值保存,而++i保存为i变量,即最终结束后i的值赋值给所有的++i,然后进行函数参数传递。需要注意的是,传参从右边括号开始到左边括号结束,也是在此时得到最终i值赋值给++i,在传参时,逗号和圆括号也作为i++的结束标记。

4、做位操作是最好用无符号数,因为数字右移以符号位补位,左移以0补位。

5、逻辑与可以用来部分清零,逻辑或可以用来部分置一。

6、变量a、b,在不引入第三方变量的条件下交换变量值可以用逻辑异或,a=a^b;b=a^b;a=a^b;也可以用加减法a=a+b;b=a-b;a=a-b;同理乘除法也可以,但是加减法无法做大数操作,容易越界,乘除法不可以交换0,所以异或较为合理。

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页