• linux时间编程


    本次用到的函数有:

    time_t time(time_t *tloc) ;

    struct tm *gmtime(const time_t *timep) ; 

    struct tm *localgmtime(const time_t *timep) ;

    char *asctime(const struct tm *tm) ;

    char *ctime(const time_t *timep) ;

    int gettimeofday(struct timeval *tv,struct timezone *tz) ;

    unsigned int sleep(unsigned int seconds) ;

    void usleeo(unsigned long usec) ;

    源程序:

    1)time1.c

    #include<time.h>

    #include<stdio.h>

    int main(int argc,char *argv[])

    {

            time_t t;

            struct tm *gt;

            struct tm *lt;  // lt 类型为struct tm,是个结构体

            t=time(NULL);

            gt=gmtime(&t);

            lt=localtime(&t);

            printf(asctime(gt));  //gt已经代表地址,不用再“&”取地址了

            printf(asctime(lt));

            printf(ctime(&t));

            return 0;

    }

    2)time_cost.c

    #include<stdio.h>

    #include<stdlib.h>

    #include<sys/time.h>

    #include<math.h>

    void cost()

    {

            unsigned int i,j;

            double y=0;

            for(i=0;i<1000;i++)

                    for(j=0;j<1000;j++)

                            y++;

    }

    int main()

    {

            struct timeval  t_start , t_end;  //定义两个struct timeval 的结构体

            float t_use;

            gettimeofday(&t_start,NULL);

            cost();

            gettimeofday(&t_end,NULL);

            t_use=(t_end.tv_sec - t_start.tv_sec)*1000000+t_end.tv_usec-t_start.tv_usec;  //t_end.tv_sec是引用结构体t_end中的tv_sec成员

            t_use/=1000000;

            printf("%f\n",t_use);

            return 0;

    }

  • 相关阅读:
    网络通讯协议的基本要素
    java实现二维码的生成与解析
    SpringCloud应用间通信-RestTemplate与Feign
    SpringCloud服务注册与发现-Eureka、Nacos和Consul
    极光推送-java消息推送app
    Git的回滚和撤销操作
    SOFABoot学习
    记录一次生产环境下EleasticSearch故障(cpu打满)
    记录SQL优化
    利用二进制存储多种状态
  • 原文地址:https://www.cnblogs.com/maliqian/p/2290810.html
Copyright © 2020-2023  润新知