定时捶打

时间:2013-12-06 03:35:42

标签: c++

我确信我的嵌套条件会破坏记忆,但我想知道它需要多长时间。我假设time.h可以帮助,但我不知道使用什么方法和如何显示。有人可以帮忙吗?

我已根据提出的建议更新了我的代码,我相信它有效。我的输出速度很慢(thrashTime)。这是几秒钟?此外,也许我的方法可以重构。我在条件之前和之后设定了一段时间。

// Updated
#include <iostream>
#include <time.h>
using namespace std;
int array[1 << 14][1 << 14];

int main() {
    time_t beforeThrash = 0;
    time_t afterThrash = 0;
    time_t thrashTime;
    int i, j;

    beforeThrash = time(NULL);
    for (i = 0; i<16384; i++)
        for (j = 0; j<16384; j++)
            array[i][j] = i*j;

    afterThrash = time(NULL);
    thrashTime = afterThrash - beforeThrash;
    cout << thrashTime << endl;
    system("pause");
    return 0;
}

1 个答案:

答案 0 :(得分:0)

您可以按照Joe Z提到的timeclock中的说明进行操作。

打印当前时间的快速演示:

#include <ctime>
time_t start = time(0);
const char* tstart = ctime(&start);
// std::cout << tstart; will give you local time Fri Dec 06 11:53:46 2013

时差:

#include <ctime>
clock_t t = clock();
do_something();
t = clock() - t;
// std::cout << (float)t / CLOCKS_PER_SEC; will give you elapsed time in seconds

您只需将do_something();替换为要测量的操作。