测试代码段的执行时间并精确到微秒

来源:互联网 发布:soma剧情 知乎 编辑:程序博客网 时间:2024/06/06 02:11

在嵌入式开发中,获得程序的运行速度是非常重要的,现总结一个常用的方法,看如下代码。

#include "time.h"
#include "sys/time.h"
#include "stdio.h"

int main(int argc, char *argv[])
{
    
    timeval start,end;
    long dif_sec, dif_usec;
    
    gettimeofday(&start, NULL);
    
    //要测试的代码段。。。。。
    
    gettimeofday(&end, NULL);
    dif_sec = end.tv_sec - start.tv_sec;
    dif_usec = end.tv_usec - start.tv_usec;
    printf("start.tv_sec=%ld, start.tv_usec=%ld\n", start.tv_sec, start.tv_usec);
    printf("end.tv_sec=%ld, end.tv_usec=%ld\n", end.tv_sec, end.tv_usec);
    printf(" %ldsec (%ld us)\n\n",dif_sec, dif_sec*1000000+dif_usec);
    return 0;
}