用了c++标准库random
想生成1-600范围内的随机数
但是输出的全是1
不知道为什么
希望有知晓的告知下
感激不尽
#include <iostream>
#include <string>
#include <cstdlib>
#include <random>
using namespace std;
typedef struct
{
int *elem;//动态数组
int length;//表长度
}SSTable;
int main()
{
SSTable a;
//申请一块内存,存放int数组
a.elem=(int *)malloc(1024);
a.length=0;
//给数组赋值1..100
//for(int i=0;i<100;i++){
// a.length++;
// cout<<a.length<<endl;
//生成随机数,在1~600之间
for(int i=0;i<100;i++){
default_random_engine generator;
uniform_int_distribution<int> distribution(1,600);
cout<<distribution(generator)<<endl;
}
// cout<<a.elem[i]<<endl;
//}
// cout<<"kkk:"<<a.length<<endl;
// for(int i=0;i<a.length;i++){
// cout<<a.elem[i]<<endl;
// }
free(a.elem);
return 0;
}
输出很多个1
了
想生成1-600范围内的随机数
在创建完generator加一个种子设置看看
generator.seed(9527);