linux--clock() 函数介绍

一、使用遇到的问题

1、测试同一程序在不同平台上运行的时间,使用c/c++中的计时函数clock(),使用时测试的时间,pc的windows下是143s,imx6的linux下是81791s

(1)调用clock()函数的代码

(2)pc的windows下是143s

(3)imx6的linux下是81791s

 

二、问题分析

1、对clock()函数理解不对;

 

三、clock()函数的介绍

1、clock()函数的头文件

//
#include <stdio.h>
//

2、clock() 函数返回值

(1)函数定义的描述如下 clock returns the processor time used by program since the beginning of the execution, or -1 if unavailable. 

(2)这里提到clock()函数返回的是程序运行过程中耗掉得process time,也就是CPU time。你以为它返回的是一个标准时间单位,你错了,因为还有下一句描述:clock() / CLOCKS_PER_SEC is a time in seconds.CLOCKS_PER_SEC,它用来表示一秒钟会有多少个时钟计时单元(clock tick),也就是硬件滴答数。一个clock tick不是CPU的一个时钟周期,而是C/C++的一个基本计时单位,因此只与编译器有关。在Qt中time.h宏定义的CLOCKS_PRE_SEC是1000,也就是1000个滴答是一秒,在标准POSIX中定义为1000000个滴答为一秒。

 

四、修改后测试

1、对应修改见图

2、运行

(1)pc的windows下是143s,和之前的一样

(2)imx6的linux下是83s

 

致谢

1、Linux下clock计时函数学习

2、 请问时间的嘀嗒数是根据什么来设定的

 

 

 

 

展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 技术黑板 设计师: CSDN官方博客
应支付0元
点击重新获取
扫码支付

支付成功即可阅读