64ビットの変数をシフトするコードを教えてください。
uint64_t i;
i = (1 << 30);
i = (1 << 31);
i = (1 << 57);
上記のようなコードを書くと、
warning #68: integer conversion resulted in a change of sign
i = (1 << 31);
^
warning #63: shift count is too large
i = (1 << 57);
^
とエラー表示されてしまいます。
よろしくお願いします。
g++ (GCC) 4.1.2 20080704 (Red Hat 4.1.2-44)
64ビットのシフト演算
Re: 64ビットのシフト演算
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)