`
mmdev
  • 浏览: 12932434 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

QT 的随机函数的应用

 
阅读更多

QT中的随机函数的用法

首先是初始化:

qsrand(QTime(0,0,0).secsTo(QTime::currentTime()));
接着就可以随机了:
qrand()理论上返回0 到RAND_MAX间的值。
如果要返回0~n间的值,则为:qrand()%n;
如果要返回a~b间的值,则为:a + qrand() % (b - a)

这里介绍2种方法

头文件都必须的,不多说了: #include<QTime>

其中一个:

函数中:

QTime t;

t= QTime::currentTime();

qsrand(t.msec()+t.second()*1000);

int n = qrand();

还有一个简单方法:

qsrand(time(NULL));

int n = qrand();

这2句不一定要连着,前边初始化种子可以在程序开始的时候就初始化。

如果2句连在一起,并且又同时出现在for循环中,就容易产生相同的随机数。

关于srand的说明:(百科)

 srand函数是随机数发生器的初始化函数。

原型:void srand(unsigned seed);   
用法:它需要提供一个种子,如: srand(1); 直接使用1来初始化种子。不过常常使用系统时间来初始化,即使用 time函数来获得系统时间,它的返回值为从 00:00:00 GMT, January 1, 1970 到现在所持续的秒数,然后将time_t型数据转化为(unsigned)型再传给srand函数,即: srand((unsigned) time(&t)); 还有一个经常用法,不需要定义time_t型t变量,即: srand((unsigned) time(NULL)); 直接传入一个空指针,因为你的程序中往往并不需要经过参数获得的t数据。srand((int)getpid()); 使用程序的ID(getpid())来作为初始化种子,在同一个程序中这个种子是固定的。

分享到:
评论

相关推荐

    Qt静态函数发送信号

    讲述Qt如何实现静态函数中发送信号,对应文章: https://lizhifun.blog.csdn.net/article/details/112631489

    Qt随机点名器

    Qt随机点名器,读取已编辑的txt文件,可作抽奖器使用,将注释的两行代码释放开,即可

    Qt绘制sin函数静态波形

    使用Qt5.6绘制sin函数波形,可调节周期与振幅。对于初学者绘制波形十分有用。

    c++ qt 静态函数中发信号

    c++ qt 中在静态函数中发信号的方式,以及回调函数的基本使用, c++ qt 中在静态函数中发信号的方式,以及回调函数的基本使用, c++ qt 中在静态函数中发信号的方式,以及回调函数的基本使用

    Qt中调用函数如何返回多个值的Qt文件

    Qt中调用函数如何返回多个值的Qt文件,详情可参考:https://blog.csdn.net/didi_ya/article/details/119854553

    Qt+update函数+paintEvent事件

    qt update函数的理解: update()用来更新绘图事件,重新绘制图片。下面有个demo可以运行一下,一目了突然。

    QT中文函数手册.rar

    Qt帮助文档,学习图形界面开发,肯定离不开帮助文档的使用,因为它不像 C 语言那样就那么几个函数接口,图形接口的接口可以用海量来形容,常用的我们可能能记住,其它的真的没有必要去记,用到什么就去帮助文档查看...

    log4Qt 支持函数名,类名

    log4Qt 支持函数名,类名,可以自己随意修改代码,本想免费分享,但最小是1分

    Qt connect传参方式及lambda函数传参方式演示

    connect函数的几个用法 通过分别演示信号有无参数与对应的有无参数的槽函数 能够很好地了解connect的用法 【包括对lambda函数的应用】

    Qt/C++抽象类和纯虚函数讲解示例源代码

    该资源是博主博客的源代码,博客上有详细讲解Qt/C++关于纯虚函数和抽象基类原理讲解和示例用法解释,博客地址如下: https://blog.csdn.net/naibozhuan3744/article/details/94488200 其中编译环境为QtCreator4.5.0...

    QT常用函数集合工程

    此工程实现获取当前工程目录、获取指定目录下的所有文件名、获取系统当前时间、获取自1970.1.1日以来到当前时间的毫秒数、打开选择目录的对话框、打开选择目录的对话框、打开选择文件路径的对话框、打开选择保存文件...

    QT_connect函数的用法

    信号和槽是一种高级接口,应用于对象之间的通信,它是 QT 的核心特性,也是 QT 区别于其它工具包的重要地方。信号和槽是 QT 自行定义的一种通信机制,它独立于标准的 C/C++ 语言,因此要正确的处理信号和槽,必须...

    基于Qt的函数对象(泛化仿函数)设计,可在线程中运行并通过信号返回QVariant

    基于Qt的函数对象(泛化仿函数)设计,可在线程中运行并通过信号返回QVariant

    qt显示数学公式的函数库

    QtMmlWidget是一个Qt类,可用于呈现用MathML 2.0编写的数学公式。 一般MathML 2.0编写的数学公式都保存于一个单独的.xml文件当中,然后QtMmlWidget类去读取这个.xml的内容,就可以显示公式了 ​

    QT 3.0.5函数手册中文版.CHM

    QT 3.0.5函数手册中文版.CHM

    QT写的双色球随机抽选

    QT写的双色球随机抽选 适合qt初学者。可能中奖哦。qt

    Qt函数查询手册chm.zip

    QT各种类查询手册,帮助新手入门QT,希望对需要的朋友有帮助,不需要记忆太多的类,需要的时候查询使用就好

    兼容、适配QT的压缩 qCompress 和 解压 qUncompress 函数

    这是为了适配QT压缩 qCompress 和 解压 qUncompress 函数而修改的文件, * 本代码中的 zCompress 函数对应QT的 qCompress; * 本代码中的 zUncompress 函数对应QT的 qUncompress; * QT的 QByteArray 用 ZByteArray...

    qt界面化实现各种滤波函数

    开发环境是基于qt+opencv+vs2013能实现方框滤波,均值滤波等滤波函数,已验证,均能运行,如若需要后续资料,尽可私信我,大家互相学习

    Qt随机迷宫及路径获取

    Qt随机迷宫及路径获取

Global site tag (gtag.js) - Google Analytics