次のコードについて質問があります。
#include <iostream>
#include <ctime>
int main(){
unsigned long int blob;
srand(time(0));
for(int counter = 0; counter <= 100; counter++) {
blob = rand() % 4000000000UL ;
std::cout << blob << std::endl;
}//for
system("pause");
return 0;
} //main
codepad.org では、次のような大きな値を出力します
378332591
1798482639
294846778
1727237195
62560192
1257661042
しかし、Windows 7 64 ビットでは、小さな値しか出力されません (VS11 および Code::Blocks でコンパイルしてテスト済み)。
10989
13493
13169
18581
17972
29
C++ 学習者を助けてくれてありがとう;)