移位迷惑

来源:互联网 发布:js 标签添加属性 编辑:程序博客网 时间:2024/05/18 14:11

东软笔试这么一道题

int i=10;

do

{

    i/=2;

}

while

(

  i>>1

);

求程序结束后i的值(A)

A  1       B 2          C 5          D -1

很可能会因为i>>1这个条件而错误,其它这个条件并没有改变i的值。也就是说i>>1,i的值是不变的。只有通过赋值操作才能改变其值i>>=1;

int i=10;

do

{

    i/=2;

}

while

(

  i>>=1

);

此时输出的结果是0;

 

 

原创粉丝点击