C#, C♯, C#相談室 Part90 [無断転載禁止]©5ch.io
■ このスレッドは過去ログ倉庫に格納されています
0485デフォルトの名無しさん
2016/04/16(土) 05:36:17.96ID:4BDbPdkpなんでなんだろうね。VC++でもGCCでもiがまるでunsigned longであるかのようなコードになってる
https://msdn.microsoft.com/ja-jp/library/c70dax92.aspx
"プレフィックスもサフィックスも付かない場合、コンパイラは整数リテラル値に型 int (32 ビット) を与えます。値が収まりきらない場合は型 long long (64 ビット) を与えます。"
4000000000が4000000000LLと解釈されてるとしても変な気がする。
例えば下のようにすると無限ループになる
long i;
long long c = 4000000000LL;
for (i = 0; i < c; i++) {
num += 0.000000001;
}
いずれにせよこんな危なっかしいコードは書かないほうが良いと思う
■ このスレッドは過去ログ倉庫に格納されています