我在Visual Studio 2008中运行简单的程序,它给出了如下的2个结果。 请帮助我了解为什么在第一种情况下它给结果= 1024 案例1: #include<windows.h>
#include<iostream>
using namespace std;
int main()
{
int i =4;
k = i<<3 + i<<1;
cout<
这实际上是我在HackerRank中找到的一个问题。这个问题说找到一个数字中最大的连续的一位数。 例如: The number 123 (0111 1011 Base 2) should output "4" (01111011) 我想找到最高效和紧凑的算法做到这一点。 这是在我最好的拍摄: int getMaxBits(long number) {
return number != 0