• linux时间编程


    目录

    一、时间编程

    二、time

    三、 ctime

    四、 locatime

    五、asctime


    一、时间编程


            1、世界标准时间(格林尼治时间)
                
                世界标准时间,简称UTC,它是一种规范世界时间的规则,将地球划分为24个时区。
                
            2、编程时,获取系统的标准时间
            
                linux系统时间的计算方式:以1970年1月1日0时0分0秒 到 此时此刻的秒数
                
                1970:是unix的系统起始时间。


                
       二、time

                #include
                time_t time(time_t *tloc);

                功能:获取系统的标准时间
                参数:tloc:保存秒数的变量地址
                返回值:成功返回获取到的秒数
                        失败返回错误码

    1. #include
    2. #include
    3. int main(void)
    4. {
    5. long t,ret;
    6. ret=time(&t);
    7. printf("t=%ld\n",t);
    8. return 0;
    9. }

                        


                        
    三、 ctime

                 #include
                char *ctime(const time_t *timep);
                功能:将标准时间转换成字符串时间
                参数: timep:以秒为单位的时间的指针
                返回值:成功返回表示时间的字符串
                        失败:NULL

    1. #include
    2. #include
    3. int main(void)
    4. {
    5. long t,ret;
    6. ret=time(&t);
    7. printf("t=%ld\n",t);
    8. printf("%s",ctime(&t));
    9. return 0;
    10. }


    ********************************************************************        

    四、   locatime

                #include
                struct tm *localtime(const time_t *timep);
                功能: 
                        将获得的秒数转换成时间结构体,并返回
                参数: 
                        timep:以秒为单位的时间的指针
                返回值:成功返回秒数转换的结构体时间
                        失败返回NULL
                

            struct tm {
                   int tm_sec;    /* Seconds (0-60) */    秒数
                   int tm_min;    /* Minutes (0-59) */    分钟
                   int tm_hour;   /* Hours (0-23) */    小时
                   int tm_mday;   /* Day of the month (1-31) */天
                   int tm_mon;    /* Month (0-11) */月-----注意使用时+1
                   int tm_year;   /* Year - 1900 */
                   int tm_wday;   /* Day of the week (0-6, Sunday = 0) */天在一周里为周几
                   int tm_yday;   /* Day in the year (0-365, 1 Jan = 0) */天在一个月为几日
                   int tm_isdst;  /* Daylight saving time */夏令时
               };

    1. #include <stdio.h>
    2. #include <time.h>
    3. #include <stdlib.h>
    4. int main(void)
    5. {
    6. long t,ret;
    7. struct tm *tp;
    8. ret=time(&t);
    9. printf("t=%ld\n",t);
    10. printf("%s",ctime(&t));
    11. if((tp=localtime(&t))==NULL){
    12. perror("localtime");
    13. exit(1);
    14. }
    15. printf("%4d %02d-%02d %02d:%02d:%02d\n",tp->tm_year+1900,tp->tm_mon+1,tp->tm_mday,tp->tm_hour,tp->tm_min,tp->tm_sec);
    16. printf("%s",asctime(tp));
    17. return 0;
    18. }

     五、asctime

            #include
            char *asctime(const struct tm *tm);
            功能:
                    根据结构体的时间,返回字符串时间
            参数:
                    tm:结构体时间
            返回值:成功:字符串时间
                    失败:NULL

  • 相关阅读:
    Mybatis巧用@One注解一个SQL联合查询语句实现一对一查询
    简述MVC模式
    3、Pinpoint-Agent端注册服务到Server端
    MySQL数据库结合项目实战SQL优化总结
    xxl-job-admin 核心类解析 XxlJobAdminConfig
    1.1 熟悉x64dbg调试器
    PDA库存盘点,有效提高电子制造企业库存盘点效率
    代码随想录 动态规划 part16
    Arduino操作MPU6050模块
    免费Scrum管理工具-Leangoo领歌
  • 原文地址:https://blog.csdn.net/qq_54075859/article/details/126611412