飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 3654|回复: 2

[C/C++] c++ 时间相关例子

[复制链接]
  • TA的每日心情
    开心
    2023-2-7 08:49
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    发表于 2018-12-7 23:09:07 | 显示全部楼层 |阅读模式
    时间计算在程序中还是用的很多的,比如一些游戏开发中,每天定时更新任务之类,如下是简单c++时间使用例子:
    [C++] 纯文本查看 复制代码
    // c++ time 相关 初步体验
    
    #include <Windows.h> //Sleep()
    #include <ctime>     //包含 #include <time.h>
    #include <iostream>
    #include <string>
    
    int main() {
      //系统的当前日历时间,自
      //1970年1月1日以来经过的秒数(时间戳)。如果系统没有时间,则返回 .1。 time_t
      // time(time_t *time);
      time_t tt, tt1;
      tt = time(NULL);
      tt1 = time(NULL);
    
      //该函数返回一个指向表示本地时间的 tm 结构的指针。
      // struct tm *localtime(const time_t *time);
      struct tm *p_tm1;
      p_tm1 = localtime(&tt);
    
      //该函数返回一个指向 time 的指针,time 为 tm
      //结构,用协调世界时(UTC)也被称为格林尼治标准时间(GMT)表示。 struct tm
      // *gmtime(const time_t *time);
      memset(p_tm1, 0, sizeof(struct tm));
      p_tm1 = gmtime(&tt);
    
      //该返回一个表示当地时间的字符串指针,字符串形式 day month year
      //hours:minutes:seconds year\n\0。 char *ctime(const time_t *time);
      char *time_sz = (char *)malloc(sizeof(char) * 31);
      time_sz = ctime(&tt);
    
      //该函数返回一个指向字符串的指针,字符串包含了 time 所指向结构中存储的信息,
      //  返回形式为:day month date hours:minutes:seconds year\n\0。
      // char * asctime ( const struct tm * time );
      memset(time_sz, 0, sizeof(char) * 31);
      time_sz = asctime(p_tm1);
    
      //该函数返回日历时间,相当于 time 所指向结构中存储的时间
      // time_t mktime(struct tm *time);
      memset(&tt, 0, sizeof(time_t));
      tt = mktime(p_tm1);
    
      //该函数返回程序执行起(一般为程序的开头),处理器时钟所使用的时间。如果时间不可用,则返回
      //.1 clock_t clock(void);
      clock_t cbe = clock();
      Sleep(3);
      clock_t ced = clock();
      int clock_leg = ced - cbe;
    
      //该函数返回 time1 和 time2 之间相差的秒数。
      // double difftime ( time_t time2, time_t time1 );
      double time_leng = difftime(tt1, tt);
    
      //该函数可用于格式化日期和时间为指定的格式。
      // size_t strftime();
      char *strptr = (char *)malloc(sizeof(char) * 32);
      size_t st = strftime(strptr, sizeof(char) * 31, "%A", p_tm1);
    
      int i = 0;
      return 0;
    }

    PYG19周年生日快乐!
  • TA的每日心情
    无聊
    2019-1-25 12:46
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    发表于 2018-12-15 10:21:50 | 显示全部楼层
    好的,讲得还是不错得
    PYG19周年生日快乐!
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表