zoukankan      html  css  js  c++  java
  • 计算程序执行的时间

    1.这个是windows里面经常使用来计算程序执行时间的函数。
    DWORD dwStart = GetTickCount();
    //这里执行你的程序代码
    DWORD dwEnd = GetTickCount();
    则(dwEnd-dwStart)就是你的程序执行时间, 以毫秒为单位

    这个函数仅仅精确到55ms,1个tick就是55ms。


    #include <iostream>
    #include <windows.h>
    using namespace std;
    int main(int argc, char* argv[])
    {
    DWORD start, end;

    start = GetTickCount();
    for(int i=0;i<1000;i++)
    cout<<"you are a good child!"<<endl;   //your code
    end = GetTickCount()-start;
    cout<<end<<endl;
        return 0;
    }

    2
    timeGetTime()基本等于GetTickCount(),可是精度更高
    DWORD dwStart = timeGetTime();

    //这里执行你的程序代码

    DWORD dwEnd = timeGetTime();

    则(dwEnd-dwStart)就是你的程序执行时间, 以毫秒为单位
    尽管返回的值单位应该是ms,但传说精度仅仅有10ms。

    #include <iostream>
    #include <windows.h>
    #pragma comment(lib,"winmm.lib")

    using namespace std;
    int main(int argc, char* argv[])
    {
    DWORD start, end;

    start = timeGetTime();
    for(int i=0;i<100;i++)
    cout<<"you are a good child!"<<endl;
    end = timeGetTime()-start;
    cout<<end<<endl;
        return 0;
    }

    3
    用clock()函数。得到系统启动以后的毫秒级时间,然后除以CLOCKS_PER_SEC,就能够换成“秒”。标准c函数。
    clock_t clock ( void );

    #include <time.h>
    clock_t t = clock();
    long sec = t / CLOCKS_PER_SEC;
    他是记录时钟周期的,实现看来不会非常精确,须要试验验证;

    #include<iostream>
    #include<ctime> //<time.h>
    using   namespace   std;
    int   main()
    {
        time_t   begin,end;

        double duration;
        begin=clock();
        //这里加上你的代码
        end=clock();

        duration=double(end-begin)/CLOCKS_PER_SEC;
        cout<<"runtime:   "<<duration<<endl;
    }

  • 相关阅读:
    HackingLab-再加密一次你就得到key啦~
    操作系统理论细节 2
    操作系统理论细节 1
    各种调度算法均衡利弊
    Github实现代码高亮
    Oracle 生成一张测试表并插入随机的个人基本信息数据
    一,Spring Boot 入门
    关于IDEA2020年1月新版MAVEN无法自动导入依赖
    操作系统存储管理--虚拟内存地址和物理内存地址
    apache2.4 tomcat 出现502 Proxy Error错误
  • 原文地址:https://www.cnblogs.com/wzjhoutai/p/7098016.html
Copyright © 2011-2022 走看看