整数のすべてのビットを出力するこのコードを考えると、次のようになります。
private string getBitLiteral(bool bitVal)
{
if (bitVal)
{
return ("1");
}
else
{
return ("0");
}
}
Int64 intThisHand = 127;
for (int i = 64; i > 0; i--)
{
HttpContext.Current.Response.Write(
getBitLiteral((intThisHand & (1 << i)) != 0)
);
}
なぜそれが印刷されるのですか?
1000000000000000000000000011111110000000000000000000000000111111
まず、最後の7桁が1であると予想されるので、私は正しくルーパーですか?
第二に、なぜ真ん中に1があるのですか?末尾の71を除いて、すべて0になると思います。