gpt4 book ai didi

c++ - 我没有以秒为单位得到耗时

转载 作者:太空狗 更新时间:2023-10-29 21:12:43 24 4
gpt4 key购买 nike

我需要以秒为单位知道我的程序运行时间。只是流逝的时间,我没有在两者之间做任何事情,所以我不需要两个事件之间的时间,我想要做的已经在代码中了。

clock_t begin = clock();
float timeElapsed = (float)begin/(CLOCKS_PER_SEC);
cout << timeElapsed << endl;

问题是,正在打印“时间”,但不是以秒为单位。我什至将它与计时表进行了比较,它绝对不是以秒为单位。当屏幕上出现“1.27818”之类的东西时,我预计它是 1.27818 秒,但显然不是。到 1 花费的时间太多了,而且这个时间绝对不是一秒钟。这是怎么回事? “(float)begin/(CLOCKS_PER_SEC)”不是应该在几秒钟内返回吗?

更新
我这样做了:

clock_t begin = clock();
float timeElapsed = (float)(clock() - begin)/(CLOCKS_PER_SEC);
cout << timeElapsed << endl;

但我得到的值是这样的:

0
1e-06
1e-06
0
1e-06
1e-06
2e-06
1e-06

最佳答案

看看这个例子:

int main ()
{
clock_t t;
int f;
t = clock();
printf ("Calculating...\n");
f = call_some_function();
printf ("Result: %d\n",f);
t = clock() - t;
printf ("It took me %d clicks (%f seconds).\n",t,((float)t)/CLOCKS_PER_SEC);
return 0;
}

需要注意的一件事是您可能想要减去 clock() - 在操作之后开始,以获得操作耗时。

关于c++ - 我没有以秒为单位得到耗时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46590774/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com