c语言linux打印运行时间(耗时) gettimeofday()、timeval、<sys/time.h>
生活随笔
收集整理的這篇文章主要介紹了
c语言linux打印运行时间(耗时) gettimeofday()、timeval、<sys/time.h>
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
#include <stdio.h>
#include <sys/time.h>double __get_us(struct timeval t) { return (t.tv_sec * 1000000 + t.tv_usec);
}int main(){struct timeval start_time, stop_time;gettimeofday(&start_time, NULL);//待運(yùn)行代碼gettimeofday(&stop_time, NULL);printf("Time use %f ms\n", (__get_us(stop_time) - __get_us(start_time)) / 1000);
}
示例(在ubuntu16.04上):
test.c
#include <stdio.h> //使用printf()需要包含 #include <sys/time.h> #include <unistd.h> //使用sleep()函數(shù)需要包含double __get_us(struct timeval t) {return (t.tv_sec * 1000000 + t.tv_usec); }int main() {struct timeval start_time, stop_time;gettimeofday(&start_time, NULL);//待運(yùn)行代碼sleep(1);gettimeofday(&stop_time, NULL);printf("Time use %f ms\n", (__get_us(stop_time) - __get_us(start_time)) / 1000); }編譯運(yùn)行結(jié)果:
[root@ubuntu /arnold_test/20211227_TEST]12# gcc test.c [root@ubuntu /arnold_test/20211227_TEST]13# ./a.out Time use 1000.994000 ms參考文章:C語(yǔ)言linux gettimeofday()函數(shù)和time()函數(shù)的區(qū)別(后者只能得到秒級(jí)系統(tǒng)時(shí)間,前者能得到毫秒甚至微秒級(jí)系統(tǒng)時(shí)間)
總結(jié)
以上是生活随笔為你收集整理的c语言linux打印运行时间(耗时) gettimeofday()、timeval、<sys/time.h>的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: MJPEG和H.264的区别
- 下一篇: 阻塞、非阻塞、超时(同步与异步)