精度が足りないと、一部の定数式でデータが失われることがあります。定数式でデータ型を指定するときは明示的に行なってください。u、U、l、L のいくつかを組み合わせて、すべての整定数の型を指定してください。型変換を使用して、定数式の型を指定することもできます。次の例を考えてみましょう。
int i = 32; long j = 1 << i; /* RHS が整数式のため j は 0 になる */ /* 式 */ |
修正版は次のようになります。
int i = 32; long j = 1L << i; |