在C语言中,可以使用多种方法来计时,下面将介绍两种常用的方法:使用<time.h>
库和gettimeofday()
函数。
1. 使用<time.h>
库
<time.h>
库提供了一些函数来获取当前时间和进行时间计算,下面是一个简单的示例代码,演示如何使用<time.h>
库进行计时:
#include <stdio.h> #include <time.h> int main() { time_t start, end; double elapsed_time; // 获取开始时间 time(&start); // 执行需要计时的代码 // ... // 获取结束时间 time(&end); // 计算经过的时间(以秒为单位) elapsed_time = difftime(end, start); printf("Elapsed time: %f seconds ", elapsed_time); return 0; }
在上面的代码中,我们首先使用time(&start)
获取当前时间并将其存储在变量start
中,执行需要计时的代码,使用time(&end)
获取结束时间并将其存储在变量end
中,通过调用difftime(end, start)
函数,我们可以计算出经过的时间(以秒为单位),并将结果存储在变量elapsed_time
中,使用printf()
函数打印出经过的时间。
2. 使用gettimeofday()
函数
gettimeofday()
函数是Linux系统中的一个系统调用,用于获取当前的时间戳,下面是一个简单的示例代码,演示如何使用gettimeofday()
函数进行计时:
#include <stdio.h> #include <sys/time.h> int main() { struct timeval start, end; double elapsed_time; // 获取开始时间 gettimeofday(&start, NULL); // 执行需要计时的代码 // ... // 获取结束时间 gettimeofday(&end, NULL); // 计算经过的时间(以秒为单位) elapsed_time = (end.tv_sec start.tv_sec) + (end.tv_usec start.tv_usec) / 1000000.0; printf("Elapsed time: %f seconds ", elapsed_time); return 0; }
在上面的代码中,我们首先定义了两个结构体变量start
和end
,用于存储开始和结束的时间戳,分别调用gettimeofday(&start, NULL)
和gettimeofday(&end, NULL)
来获取当前的时间戳,并将其存储在相应的变量中,接下来,通过计算结束时间戳与开始时间戳之间的差值,可以得到经过的时间(以秒为单位),使用printf()
函数打印出经过的时间。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/419669.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复