精华内容
下载资源
问答
  • C++获取当前系统时间

    2012-06-16 15:07:33
    讲述C、C++如何获取系统时间的方法,以及详尽用法解释。
  • 主要介绍了C++获取当前系统时间的方法,实例总结了四个获取系统时间的方法,非常具有实用价值,需要的朋友可以参考下
  • 如何用C++获取当前系统时间,望大神给出具体的执行步骤,还有头文件,谢谢大神们
  • C/C++获取当前系统时间

    千次阅读 2020-06-17 13:46:05
    C/C++获取当前系统时间 //方案— 优点:仅使用C标准库;缺点:只能精确到秒级 #include <time.h> #include <stdio.h> int main( void ) { time_t t = time(0); char tmp[64]; strftime( tmp, sizeof...

    C/C++获取当前系统时间

    //方案— 优点:仅使用C标准库;缺点:只能精确到秒级
    #include <time.h>
    #include <stdio.h>
    int main( void )
    {
        time_t t = time(0);
        char tmp[64];
        strftime( tmp, sizeof(tmp), "%Y/%m/%d %X %A 本年第%j天 %z",localtime(&t) );
        puts( tmp );
        return 0;
    }
    size_t strftime(char *strDest, size_t maxsize, const char *format, const struct tm *timeptr);
    根据格式字符串生成字符串。
    struct tm *localtime(const time_t *timer);
    取得当地时间,localtime获取的结果由结构tm返回
    返回的字符串可以依下列的格式而定:
    %a 星期几的缩写。Eg:Tue
    %A 星期几的全名。 Eg: Tuesday
    %b 月份名称的缩写。
    %B 月份名称的全名。
    %c 本地端日期时间较佳表示字符串。
    %d 用数字表示本月的第几天 (范围为 00 至 31)。日期
    %H 用 24 小时制数字表示小时数 (范围为 00 至 23)。
    %I 用 12 小时制数字表示小时数 (范围为 01 至 12)。
    %j 以数字表示当年度的第几天 (范围为 001 至 366)。
    %m 月份的数字 (范围由 1 至 12)。
    %M 分钟。
    %p 以 ''AM'' 或 ''PM'' 表示本地端时间。
    %S 秒数。
    %U 数字表示为本年度的第几周,第一个星期由第一个周日开始。
    %W 数字表示为本年度的第几周,第一个星期由第一个周一开始。
    %w 用数字表示本周的第几天 ( 0 为周日)。
    %x 不含时间的日期表示法。
    %X 不含日期的时间表示法。 Eg: 15:26:30
    %y 二位数字表示年份 (范围由 00 至 99)。
    %Y 完整的年份数字表示,即四位数。 Eg:2008
    %Z(%z) 时区或名称缩写。Eg:中国标准时间
    %% % 字符。

    //方案二 优点:能精确到毫秒级;缺点:使用了windows API
    #include <windows.h>
    #include <stdio.h>
    int main( void )
    {
    SYSTEMTIME sys;
    GetLocalTime( &sys );
    printf( "%4d/%02d/%02d %02d:%02d:%02d.%03d 星期%1d\n",sys.wYear,sys.wMonth,sys.wDay,sys.wHour,sys.wMinute, sys.wSecond,sys.wMilliseconds,sys.wDayOfWeek);
    return 0;
    }

    //方案三,优点:利用系统函数,还能修改系统时间
    //此文件必须是c++文件
    #include<stdlib.h>
    #include<iostream>
    using namespace std;
    void main()
    {
        system("time");
    }

    //方案四,将当前时间折算为秒级,再通过相应的时间换算即可
    //此文件必须是c++文件
    #include<iostream>
    #include<ctime>
    using namespace std;
    int main()
    {
    time_t now_time;
    now_time = time(NULL);
    cout<<now_time;
    return 0;
    }

    展开全文
  • C/C++获取当前系统时间的方法

    万次阅读 多人点赞 2018-06-04 15:13:10
    1、使用系统函数,并且可以修改系统时间#include...}备注:获取的为 小时:分钟:秒 信息2、获取系统时间(秒级),可以换算为年月日星期时分秒#include&lt;iostream&gt; #include&lt;time.h&gt; us...

    1、使用系统函数,并且可以修改系统时间

    #include <stdlib.h>
    
    using namespace std;
    
    void main()
    {
       system("time");
    }

    备注:获取的为   小时:分钟:秒   信息


    2、获取系统时间(秒级),可以换算为年月日星期时分秒

    #include<iostream>  
    #include<time.h>  
    using namespace std;  
      
    void main()  
    {  
    
    //获取系统时间  
    time_t now_time=time(NULL);  
    //获取本地时间  
    tm*  t_tm = localtime(&now_time);  
    //转换为年月日星期时分秒结果,如图:  
    printf("local time is    : %s\n", asctime(t_tm));  
    //将时间转换为秒  
    time_t mk_time = mktime(t_tm);  
      
    //也可以自己定义一个时间  
    //定义截止时间  
    struct tm deadline_tm;  
    deadline_tm.tm_sec=0;//[0~59]  
    deadline_tm.tm_min=10;//[0~59]  
    deadline_tm.tm_hour=13;//[0~23]  
    deadline_tm.tm_isdst=0;//default  
    deadline_tm.tm_mday=31;//[1~31]  
    deadline_tm.tm_mon=2;//[0~11]  
    }


    3、使用windows API ,精确到毫秒级

    #include <windows.h>
    #include <stdio.h> 
    using namespace std;
    
    void main()
    {
           SYSTEMTIME sys; 
           GetLocalTime( &sys ); 
           printf( "%4d/%02d/%02d %02d:%02d:%02d.%03d 星期%1d\n",sys.wYear,sys.wMonth,sys.wDay,sys.wHour,sys.wMinute, sys.wSecond,sys.wMilliseconds,sys.wDayOfWeek); 
    
    }



    展开全文
  • Windows下C/C++获取当前系统时间

    万次阅读 2015-04-28 10:50:56
    Windows下C/C++获取当前系统时间 分类: C/C++ 2014-06-25 16:50 214人阅读 评论(0) 收藏 举报 c++windows时间 目录(?)[+] 【原文】http://blog.csdn.net/dadalan/article/details/5771693 写软件时经常要...

    Windows下C/C++获取当前系统时间


    【原文】http://blog.csdn.net/dadalan/article/details/5771693

    写软件时经常要用到获取系统时间显示到状态栏,这里在前人的基础上总结了一下几种方案。

    方案一:localtime()

    优点:仅使用C标准库;缺点:只能精确到秒级


    time_t是定义在time.h中的一个类型,表示一个日历时间,也就是从1970年1月1日0时0分0秒到此时的秒数,原型是:
     typedef long time_t;        /* time value */
    可以看出time_t其实是一个长整型,由于长整型能表示的数值有限,因此它能表示的最迟时间是2038年1月18日19时14分07秒。

    函数time可以获取当前日历时间时间,time的定义:
     time_t time(time_t *)

    time_t (typedef __int64  time_t )只是一个长整型,不符合我们的使用习惯,需要转换成本地时间,就要用到tm结构,time.h中结构tm的原型是:

    1. struct tm {  
    2.         int tm_sec;     /* seconds after the minute - [0,59] */  
    3.         int tm_min;     /* minutes after the hour - [0,59] */  
    4.         int tm_hour;    /* hours since midnight - [0,23] */  
    5.         int tm_mday;    /* day of the month - [1,31] */  
    6.         int tm_mon;     /* months since January - [0,11] */  
    7.         int tm_year;    /* years since 1900 */  
    8.         int tm_wday;    /* days since Sunday - [0,6] */  
    9.         int tm_yday;    /* days since January 1 - [0,365] */  
    10.         int tm_isdst;   /* daylight savings time flag */  
    11.        };  

    可以看出,这个机构定义了年、月、日、时、分、秒、星期、当年中的某一天、夏令时。可以用这个结构很方便的显示时间。

    用localtime获取当前系统时间,该函数将一个time_t时间转换成tm结构表示的时间,函数原型:
     struct tm * localtime(const time_t *)
    使用gmtime函数获取格林尼治时间,函数原型:
     struct tm * gmtime(const time_t *)

    输出方式1:
    1. #include <iostream>  
    2. #include <time.h>  
    3. using namespace std;  
    4. void dsptime(const struct tm *); //输出时间。  
    5.   
    6. int main(void)  
    7. {  
    8.  time_t nowtime;  
    9.  nowtime = time(NULL); //获取日历时间  
    10.  cout << nowtime << endl;  //输出nowtime  
    11.   
    12.  struct tm *local,*gm;  
    13.  local=localtime(&nowtime);  //获取当前系统时间  
    14.  dsptime(local);   
    15.  gm=gmtime(&nowtime);  //获取格林尼治时间  
    16.  dsptime(gm);  
    17.     
    18.  return 0;  
    19. }  
    20. void dsptime(const struct tm * ptm)  
    21. {  
    22.  char *pxq[]={"日","一","二","三","四","五","六"};  
    23.  cout << ptm->tm_year+1900 << "年" << ptm->tm_mon+1 << "月" << ptm->tm_mday << "日 " ;  
    24.  cout << ptm->tm_hour << ":" << ptm->tm_min << ":" << ptm->tm_sec <<" " ;  
    25.  cout << " 星期" <<pxq[ptm->tm_wday] << " 当年的第" << ptm->tm_yday << "天 " << endl;  
    26. }  

    输出方式2:
    1. #include <time.h>   
    2. #include <stdio.h>   
    3. int main( void )   
    4. {   
    5.     time_t t = time(0);   
    6.     char tmp[64];   
    7.     strftime( tmp, sizeof(tmp), "%Y/%m/%d %X %A 本年第%j天 %z",localtime(&t) );   
    8.     puts( tmp );   
    9.     return 0;   
    10. }  

    C/C++在time.h中提供了一个自定义时间格式的函数strftime,函数原型:
     size_t strftime(char *strDest, size_t maxsize, const char *format, const struct tm *timeptr);
    参数说明:
     char *strDest:用来存放格式化后的字符串缓存,
     size_t maxsize:指定最多可以输出的字符数,
     const char *format:格式化字符串,
     const struct tm *timeptr:要转换的时间。

    可使用的格式化字符串:
    %a 星期几的简写 
    %A 星期几的全称 
    %b 月分的简写 
    %B 月份的全称 
    %c 标准的日期的时间串 
    %C 年份的后两位数字 
    %d 十进制表示的每月的第几天 
    %D 月/天/年 
    %e 在两字符域中,十进制表示的每月的第几天 
    %F 年-月-日 
    %g 年份的后两位数字,使用基于周的年 
    %G 年分,使用基于周的年 
    %h 简写的月份名 
    %H 24小时制的小时 
    %I 12小时制的小时
    %j 十进制表示的每年的第几天 
    %m 十进制表示的月份 
    %M 十时制表示的分钟数 
    %n 新行符 
    %p 本地的AM或PM的等价显示 
    %r 12小时的时间 
    %R 显示小时和分钟:hh:mm 
    %S 十进制的秒数 
    %t 水平制表符 
    %T 显示时分秒:hh:mm:ss 
    %u 每周的第几天,星期一为第一天 (值从0到6,星期一为0)
    %U 第年的第几周,把星期日做为第一天(值从0到53)
    %V 每年的第几周,使用基于周的年 
    %w 十进制表示的星期几(值从0到6,星期天为0)
    %W 每年的第几周,把星期一做为第一天(值从0到53) 
    %x 标准的日期串 
    %X 标准的时间串 
    %y 不带世纪的十进制年份(值从0到99)
    %Y 带世纪部分的十进制年份 
    %z,%Z 时区名称,如果不能得到时区名称则返回空字符。
    %% 百分号


    方案二:GetLocalTime( &sys ); 

    优点:能精确到毫秒级;缺点:使用了windows API 


    1. #include <windows.h>   
    2. #include <stdio.h>   
    3. int main( void )   
    4. {   
    5. SYSTEMTIME sys;   
    6. GetLocalTime( &sys );   
    7. printf( "%4d/%02d/%02d %02d:%02d:%02d.%03d 星期%1d/n",sys.wYear,sys.wMonth,sys.wDay,sys.wHour,sys.wMinute, sys.wSecond,sys.wMilliseconds,sys.wDayOfWeek);   
    8. return 0;  
    9. }  

    方案三:system("time");

    优点:利用系统函数,还能修改系统时间

    1. //此文件必须是c++文件  
    2. #include<stdlib.h>  
    3. #include<iostream>  
    4. using namespace std;  
    5. void main()  
    6. {  
    7.     system("time");  
    8. }  

    方案四:time(null)

    将当前时间折算为秒级,再通过相应的时间换算即可
    1. //此文件必须是c++文件  
    2. #include<iostream>  
    3. #include<ctime>  
    4. using namespace std;  
    5. int main()  
    6. {  
    7. time_t now_time;  
    8. now_time = time(NULL);  
    9. cout<<now_time;  
    10. return 0;  
    11. }  

    方案五:CTime

    使用MFC里面的CTime类,更加方便

    第一种:
    1. CString str; //获取系统时间     
    2.   
    3. CTime tmtm=CTime::GetCurrentTime();     
    4.   
    5. str=tm.Format("%Y-%m-%d %H:%M:%S");  //主要是Y m d,H M S中间的连接符自己定义  
    6.   
    7. MessageBox(str,NULL,MB_OK);  

    第二种:
    1. SYSTEMTIME st;     
    2.   
    3. CString strDate,strTime;     
    4.   
    5. GetLocalTime(&st);     
    6.   
    7. strDate.Format("%4d-%2d-%2d",st.wYear,st.wMonth,st.wDay);     
    8.   
    9. strTime.Format("%2d:%2d:%2d",st.wHour,st.wMinute,st.wSecond); 

    注释:

    如何在C++中将filetime时间转化为字符串?

    filetime

    转化为systemtime



    SYSTEMTIME st;  

    char strTime[128];

    sprintf(strTime,"%d-%d-%d  %d:%d:%d",st.wYear,st.wMonth,st.wDay,st.wHour,st.wMinute,st.wSecond);  



    参考:

    如何在C++中将filetime时间转化为常规时间格式?

    http://bbs.csdn.net/topics/310015002

    http://www.xuebuyuan.com/1462191.html

    展开全文
  • 目录   理论 源码 理论 标准C++中有个time.h(ctime)的头文件,他提供了把当前时间...QDateTime::currentDateTime() 获取当前时间 QDateTime::fromTime_t() 从time_t中获取当前时间 QDateTime::fromStri...

    目录

     

    理论

    源码


    理论

    标准C++中有个time.h(ctime)的头文件,他提供了把当前时间转成uint的!

    在Qt中有一个QDateTime的类,这个类提供了几个静态方法:

    QDateTime::currentDateTime()   获取当前时间

    QDateTime::fromTime_t()     从time_t中获取当前时间

    QDateTime::fromString()     从String中获取当前时间

     

     

    源码

    C++时间关键源码:

    #include <time.h>
    
    
    time_t now;
    
    cout << (int)time(&now) << endl;

     

    Qt时间关键源码:

    #include <QApplication>
    #include <QDateTime>
    #include <QDebug>
    #include <windows.h>
    
    int main(int argc, char *argv[])
    {
        QApplication a(argc, argv);
    
        uint timeUInt;
        QString timeStr;
    
        while(true){
    
            timeUInt = QDateTime::currentDateTime().toTime_t();
            timeStr = QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss");
            qDebug() << "timeUInt:" << timeUInt << "\ttimeStr:" << timeStr;
            qDebug() << "timeUInt to timeStr:" << QDateTime::fromTime_t(timeUInt).toString("yyyy-MM-dd hh:mm:ss");
            qDebug() << "timeStr to timeUInt:" << QDateTime::fromString(timeStr ,"yyyy-MM-dd hh:mm:ss").toTime_t();
            qDebug() << "----------------华丽的分割线----------------";
    
            Sleep(1000);
        }
    
        return a.exec();
    }

    运行截图如下:

    展开全文
  • C++获取当前系统时间的方法

    万次阅读 2019-07-28 22:08:57
    获取系统时间方法整理 最近突然好奇能否通过编写程序来获取系统时间,查阅资料以后发现还确实有一些方法 以下笔者整理了两种方法: 1.使用system()语句 #include <stdio.h> using namespace std; ...
  • C++获取当前系统时间并格式化输出

    千次阅读 2020-02-17 23:46:22
    C++中与系统时间相关的函数定义在头文件中。 一、time(time_t * )函数 函数定义如下: time_t time (time_t* timer); 获取系统当前日历时间 UTC 1970-01-01 00:00:00开始的unix时间戳 Coordinated Universal Time...
  • C++获取当前系统时间 UTC 时间 转换

    千次阅读 2019-07-27 11:34:15
    #include<ctime> //c++ 标准库没有提供...类型 clock_t、size_t 和 time_t 能够把系统时间和日期表示为某种整数。 结构类型 tm 把日期和时间以 C 结构的形式保存,tm 结构的定义如下: struct tm { int tm_...
  • ubuntu C++ 获取当前系统时间

    千次阅读 2019-10-21 17:54:19
    #include <stdio.h> #include <time.h> std::string getCurrentTimeStr(){ time_t t = time(NULL); char ch[64] = {0};... char result[100] = {0};... strftime(ch, sizeof(ch) - 1, "%Y%m%d--%H%M%...
  • c++ 获取系统时间
  • c++获取当前系统时间并格式化输出

    万次阅读 2018-09-30 09:37:44
    #include &lt;string&gt; #include &lt;time.h&gt; using namespace std; string getTime() { time_t timep; time (&amp;timep); char tmp[64]; strftime(tmp, sizeof(tmp), "...,...
  • C++获取当前系统时间,精确到毫秒

    千次阅读 2018-07-28 11:09:19
    #include&lt;iostream&gt; #include&lt;windows.h&gt; #include&lt;time.h&gt; using namespace std; int main () { SYSTEMTIME lpsystime; GetLocalTime(&...lt...
  • 想要在c++获取当前系统时间,第一步需要包一个头文件<ctime>。 然后创建一个time_t 类型的变量nowtime,什么是time_t类型呢,该类型在c++中是这样定义的typedef long long time_t ; 实际上就是long long...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 110,089
精华内容 44,035
关键字:

c++获取当前系统时间

c++ 订阅