static_cast不起作用。 C风格的演员作品。如何修复static_cast?

时间:2017-07-20 16:43:14

标签: c++ random static-cast

工作正常:

srand(time(NULL));
cout<<(double)rand()/RAND_MAX<<endl;

不起作用:

srand(time(NULL));
cout<<static_cast<double>(rand()/RAND_MAX)<<endl;

为什么呢?如何解决?

1 个答案:

答案 0 :(得分:0)

(double)rand()/RAND_MAX

此处您只会投放rand()个号码。所以在你的代码中它也应该是这样的:

static_cast<double>(rand())/RAND_MAX

在您的示例中,您将两个int分开,然后将其转换为double