Qt 计算程序运行时间

一、精度为us级别
1、方法一

#include <qelapsedtimer.h>
#include <QDebug>

QElapsedTimer mstimer;
mstimer.start()
	
// 你所要测试的代码块
	 
float time =(double)mstimer.nsecsElapsed()/(double)1000000;
qDebug() <<"time= " <<time<<"ms";// 输出运行时间(ms)

2、gettimeofday()函数

#include <QDebug>
#include <sys/time.h>
 
struct timeval tpstart,tpend;
float timeuse;
 
gettimeofday(&tpstart,NULL);
 
// 你所要测试的代码块
 
gettimeofday(&tpend,NULL);
timeuse=(1000000*(tpend.tv_sec-tpstart.tv_sec) + tpend.tv_usec-tpstart.tv_usec)/1000000.0;
 
qDebug()<<"time= "<<timeuse<<"s";

二、、精度为ms级别
1、方法一

#include <QDebug>
#include <QTime>
 
QTime time;
time.start();
 
// 你所要测试的代码块
 
qDebug()<<"time= "<< time.elapsed()/1000.0<<"s";

2、clock()函数

#include <QDebug>
#include <sys/time.h>
 
double time_Start = (double)clock();
 
// 你所要测试的代码块
 
double time_End = (double)clock();
    
qDebug()<<"time= "<<(time_End - time_Start)/1000.0<<"s";

  • 4
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
超大位数计算程序清单 1. 第一个操作数文件 A1.txt 2. 第二个操作数文件 A2.txt 3. VC6老版本程序 bc.exe 4. VC2015新版本程序 BigCom.exe 5. 新版乘法批处理 cheng.bat 6. 新版除法批处理 chu.bat 7. 新版加法批处理 jia.bat 8. 新版减法批处理 jian.bat 9. 随机测试文件生成 CreateTestFiles.py 10随机测试文件生成图形版 DataCreater.exe 说明: 1. 测试数据的构造 可以使用清单中10的软件在图形化条件下构建测试文件,但是数据是固定1位或者几位的简单重复;如果需要随机的测试数据,可以使用清单9中的python脚本。使用前可以到www.python.org下载python 2.7安装一下就可以在命令行运行,然后就能自动生成指定长度的测试文件A1和A2了。 2.测试的验证 由于数据量比较大,可以分别使用程序清单4的软件和其他5~8批处理计算结果比较,用于验证计算的结果是否一致。其中清单中5~8的批处理是调用最新版2015实现;要使用清单3老版本的程序,可以按照5~8构建对应测试批处理或者直接在命令行指定参数,例如进行乘法可以使用命令 bc m。需要注意, 测试的时候C1.txt会被覆盖,需要先重命名上一次的文件。 3.关于最大计算位数当前设定的是不超过2147483648位,即计算的结果也不能超过这个位数。 4.本次新版发布是支持Win7 x64以及以后的平台,如果需要,可以编译为Linux或者MacOS平台上进行运算。 5.文件中C1.txt是使用新版程序结算乘法的结果,C2.txt是用旧版计算的结果,可以对比一下结果一致。但使用时间相差了几十秒!
1.项目代码均经过功能验证ok,确保稳定可靠运行。欢迎下载体验!下载完使用问题请私信沟通。 2.主要针对各个计算机相关专业,包括计算机科学、信息安全、数据科学与大数据技术、人工智能、通信、物联网等领域的在校学生、专业教师、企业员工。 3.项目具有丰富的拓展空间,不仅可作为入门进阶,也可直接作为毕设、课程设计、大作业、初期项目立项演示等用途。 4.当然也鼓励大家基于此进行二次开发。在使用过程中,如有问题或建议,请及时沟通。 5.期待你能在项目中找到乐趣和灵感,也欢迎你的分享和反馈! 【资源说明】 大一C++实训作业-基于Qt开发的贪吃蛇游戏源码+项目说明+运行截图.zip 本项目是作者在大一下学期,于C++工程技能与实训时期制作的贪吃蛇小游戏,很简单的练手,适合C++新手熟悉C++各种知识点与Qt编程 双人模式 - 由前段时间另一款小游戏产生的灵感,两位玩家分别控制一条小蛇进行吃苹果,当咬到自己、吃到毒苹果、撞到对手的蛇身/蛇尾上则死亡,最后较长者胜利 ![双人模式](./preview/content/15.png "双人模式") - 在`MySnake`类,加入一成员变量`bool secondSnake`,用于判断当前页面是否为多人模式页面。若为`true`,则构建`snake2`,并进行绘图事件的重写。在`MultiMode`类中重写键盘事件,加入小方向键更改`snake2`的运动方向。在`timeOutFun()`中对蛇的运动状态进行更新,即可实现多人模式的编写 - 代码详解:由于该功能实现的过于复杂,在整个项目多处均进行了增加代码段,因此无法在这里简单演示。请下载**项目源码**后参考整个项目进行理解。在涉及双人模式代码段均有相关注释辅助理解 蛇身绘制 - 不同于互联网上普通的贪吃蛇教程,蛇身是由简单的小方块构成的。我的小蛇由三个部分组成:蛇头、蛇身、蛇尾,都有着不同运动方向的不同贴图。 ![蛇身绘制](./preview/content/13.png "蛇身绘制") - 创建`MySnake`类,继承`Qwidget`类,重写绘图事件,分别绘制头、身、尾。根据`MySnake`类中`moveFlag`成员变量判断蛇头方向、`MySnake`中`judgeSnakeTailDirection`成员函数判断蛇尾方向 ![超出屏幕自动修改头部方向](./preview/content/14.png "超出屏幕自动修改头部方向") 按钮动画: - 鼠标在按钮上点击,按钮高亮,鼠标松开后,恢复正常;若正常点击按钮,按钮跳动,动画结束后,实行按钮功能 ![点击动画](./preview/content/12.gif "点击动画") - 实现过程:新建一个`MyPushButton`的类,继承`QPushButton`类。重写构造方法、鼠标点击事件、鼠标释放事件,并增添跳跃动画。 - 代码详解

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值