gettimeofday()用法

  • Post author:
  • Post category:其他



头文件:#include <sys/time.h>    #include <unistd.h>






定义函数:int gettimeofday (struct timeval * tv, struct timezone * tz);






函数说明:gettimeofday()会把目前的时间有tv 所指的结构返回,当地时区的信息则放到tz 所指的结构中。






timeval 结构定义为:




struct timeval{





long tv_sec;  //秒




long tv_usec;  //微秒




};






timezone 结构定义为:




struct timezone




{





int tz_minuteswest;  //和Greenwich 时间差了多少分钟




int tz_dsttime;  //日光节约时间的状态



};




例子如下




  1. #include<sys/time.h>





  2. #include<math.h>





  3. #include<stdio.h>





  4. int


    function(


    void


    )


  5. {


  6. int


    a=0,b=0,sum=0;



  7. for


    (;a<300;a++)


  8. {


  9. for


    (;b<=100;b++)


  10. sum+=b;

  11. }


  12. return


    sum;


  13. }


  14. int


    main(


    void


    )


  15. {

    int


    sum;



  16. float


    timeuse;



  17. struct


    timeval t_start,t_stop;


  18. gettimeofday(&t_start,NULL);

  19. sum=function();

  20. gettimeofday(&t_stop,NULL);


  21. //  timeuse=t_stop.tv_sec-t_start.tv_sec+(t_stop.tv_usec-t_start.tv_usec)/1000000;





  22. //  用这个计算结果是0.000000 精确度不高所至




  23. timeuse=(t_stop.tv_sec-t_start.tv_sec)*1000000+t_stop.tv_usec-t_start.tv_usec;

  24. timeuse/=1000000 ;

  25. printf(

    “the programme run %f second/n the result of 1+2+3+….100 is %d/n ”


    ,timeuse,sum);



  26. return


    0;


  27. }



版权声明:本文为cwzmjy原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。