Problems when using long long


Hmm, that is a common C operation.

Yes, the compiler is told to treat that 1 long long so that the << b shift operation can shift that 1 zero to 63 positions left.

After I discovered my mistake about the implicit (int)1 I left the old post unchanged but added the update to the top and added the comment and the correctly working solution.