为什么random()在windows中不起作用?

Chr*_*ph -6 c++ random

为什么C++ random()命令在Windows上不起作用?我random()在Ubuntu上使用命令创建了一个正在运行的程序.此命令生成随机整数.在线没有太多关于这个命令的信息.令我困惑的是代码不会以任何方式改变,并且在两个操作系统上使用相同的程序来运行代码.

这两个操作系统中是否存在任何结构差异,禁止命令对其中一个进行操作?

简单代码:

#include <iostream>

using namespace std;

int main() {
    int r = 0;
    for (int i=0; i<25; i++){
        r = random();
        cout << r <<endl;

    }
}
Run Code Online (Sandbox Code Playgroud)

rod*_*igo 7

在random()从功能stdlib.h实际上是一个POSIX功能,不是C一个.因此,只保证在POSIX系统中可用,例如Linux.

如果您想要移植到其他C环境,请使用rand().

或者,如果您使用C++,作为标记建议,以及不太旧的编译器,您可以使用来自的函数<random>.