首页 > 其他 > 详细

运算符基础面试题

时间:2020-04-08 13:19:22      阅读:56      评论:0      收藏:0      [点我收藏+]

一、&与&&的区别

&逻辑运算,也可以是位运算。&&只能是逻辑运算。

当两个符号都是逻辑运算时,&前后两个条件都是true,结果为true。&&短路与与&的结果是一致的,但&&的第一个条件是false时,最终结果就是false。

二、最有效率的计算2*8的方式是?

2种方式。传统就是化成二进制,按位置乘,将最后的结果转化成十进制。还有就是按位运算。如:2<<3,结果是2*8=16。前提条件是一个2的次幂的数被乘。

推荐使用第二种方式。

三、两个变量值如何进行互换?

int a = 2;
int b = 3;

第一种交换方式:定义第三个空变量
int c = a;
a = b;
b = c;

第二种交换方式:
a = a + b;
b = a - b; a-b是a的值,赋值给b。
a = a - b; a-b是b的值,赋值给a。

第三种交换方式:
a = a^b;
b = a^b;
a = a^b;
原理:一个数字异或同一个数字2次,值不变。

  

运算符基础面试题

原文:https://www.cnblogs.com/cnbp/p/12658869.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!