如何解决C4293:'<<' :移位计数为负数或过大,未定义的行为

时间:2015-08-12 17:07:16

标签: c++ math bit-manipulation

以下代码片段将打印无符号8字节数据类型的最大范围(无符号长整数)。

int main()
{
    std::cout<<"Unsigned long long Range - Max"<<endl;
    unsigned long long maxUnsignLongLong = ( 1ULL << 64) - 1; 
    std::cout<< maxUnsignLongLong<<endl; // 18,446,744,073,709,551,615  
    return 0; 
}

如果您编译上面的代码,那么编译器将给出&#34;移位计数为负数或太大,未定义的行为&#34; (警告)即可。我的问题是如何解决这个警告?

由于

0 个答案:

没有答案