关于C++中计时的方法
在C++的库函数中,我们可以使用clock()来计算程序的运行时间,主要使用一下三个函数类型及函数:
1、clock_t:数据类型,其实,当你打开time.h就知道了,就是个long型,用来记录一段时间内的clocks数,即CPU的运行单元时间;
2、clock():返回类型clock_t,返回的是从程序开始,到你调用clock()函数这段时间的clocks;
3、CLOCKS_PER_SEC:它用来表示一秒钟会有多少个时钟计时单元,即:
#define CLOCKS_PER_SEC ((clock_t)1000) 可以看到每过千分之一秒(1毫秒),调用clock()函数返回的值就加1。
下面举个例子,你可以使用公式clock()/CLOCKS_PER_SEC来计算一个进程自身的运行时间:
我们若想计算程序的运行时间,则只要根据程序的入口点和出口点出都计算clocks,再算差就可以了,都是在main()中进行操作,如下:
int main() {
clock_t start, end;
start = clock(); .......//要记录运行时间的程序段;
end = clock();
cout<<"Run time: "<<(double)(end - start) / CLOCKS_PER_SEC<<"S"<<endl;
//要记录分钟的话,上面的程序改为(double)(end - start) / CLOCKS_PER_SEC/60即可;
return 0; }
关于C++中计时的方法的更多相关文章
- 【问题】Asp.net MVC 的cshtml页面中调用JS方法传递字符串变量参数
[问题]Asp.net MVC 的cshtml页面中调用JS方法传递字符串变量参数. [解决]直接对变量加引号,如: <button onclick="deleteProduct('@ ...
- java 执行 jar 包中的 main 方法
java 执行 jar 包中的 main 方法 通过 OneJar 或 Maven 打包后 jar 文件,用命令: java -jar ****.jar执行后总是运行指定的主方法,如果 jar 中有多 ...
- 为什么不能在init和dealloc函数中使用accessor方法
前言 为什么不要在init和dealloc方法中调用getter和setter:Apple在Mac与iOS中关于内存管理的开发文档中,有一节的题目为:"Don'tUse Accessor M ...
- C#中DataTable中的Compute方法使用收集
原文: C#中DataTable中的Compute方法使用收集 Compute函数的参数就两个:Expression,和Filter. Expresstion是计算表达式,关于Expression的详 ...
- C#中的扩展方法
扩展方法使你能够向现有类型“添加”方法,而无需创建新的派生类型.重新编译或以其他方式修改原始类型. 扩展方法是一种特殊的静态方法,但可以像扩展类型上的实例方法一样进行调用. 以上是msdn官网对扩展方 ...
- C#中的匿名方法
C#中的匿名方法是在C#2.0引入的,它终结了C#2.0之前版本声明委托的唯一方法是使用命名方法的时代.虽然在 C# 3.0 及更高版本中,Lambda 表达式取代了匿名方法,作为编写内联代码的首选方 ...
- Java中是否可以调用一个类中的main方法?
前几天面试的时候,被问到在Java中是否可以调用一个类中的main方法?回来测试了下,答案是可以!代码如下: main1中调用main2的主方法 package org.fiu.test; impor ...
- 什么情况下才要重写Objective-C中的description方法
特别注意: 千万不要在description方法中同时使用%@和self,同时使用了%@和self,代表要调用self的description方法,因此最终会导致程序陷入死循环,循环调用descrip ...
- PHP中常见魔术方法解析
<?php class info { private $province; //省 public $city; //城市 private $myname; //姓名 //__construct( ...
随机推荐
- MFS分布式文件系统管理
MFS官方网站http://www.moosefs.org/reference-guide.html mooseFS(moose驼鹿)是一款网络分布式文件系统,它把数据分散到多台服务器上,但对于用户来 ...
- python实战第一天-paramiko模块并练习
操作系统 Ubuntu 15.10 IDE & editor JetBrains PyCharm 5.0.2 ipython3 Python版本 python-3.4.3 安装paramiko ...
- jQuery基础知识总结二
* DOM操作 *1 基本操作 * html() - 等价于innerHTML属性 * text() - 等价于textContent属性 * val() - 等价于value属性 * attr() ...
- [算法题] Remove Element
题目内容 本题来源:LeetCode Given an array and a value, remove all instances of that value in place and retur ...
- 实用css小技巧
display应用 在取消了ul/ol的默认样式{padding:0;list-style-type:none;}的时候:ul的li设置成了行内块(display:inline-block)的话,这时 ...
- python中添加环境变量
import sys sys.path 系统环境是一个list,可以将自己需要的库添加进入,例如mysql库,hive库等等.有三种方式添加,均验证通过: 1 临时添加,在一个shell窗口中 ...
- 一步一步学J2SE-HashMap的实现原理
HashMap数据结构图 HashMap的数据结构是通过数组加链表实现的.数组是HashMap的主体,链表是为了解决Hash碰撞问题. HashMap的Get方法 1. 在get的时候首先判断key ...
- JVM 调优总结
避免FullGC: 1.通过调整堆中新生代和幸存代大小,避免因为幸存代不足而让Minor GC后的对象进入老年代.每次Minor GC都有对象进入老年代会造成数次MinorGC后FullGC. 2.减 ...
- 【Maven】 install:install-file
install jar to local fs mvn .jar -DgroupId=com.bonc -DartifactId=licenseVerify-.jar -Dversion= -Dpac ...
- 深入浅出数据结构C语言版(12)——平衡二叉查找树之AVL树
在上一篇博文中我们提到了,如果对普通二叉查找树进行随机的插入.删除,很可能导致树的严重不平衡 所以这一次,我们就来介绍一种最老的.可以实现左右子树"平衡效果"的树(或者说算法),即 ...