1.方法1

1.1 示例代码

#include <time.h>
#include <stdio.h>int main()
{//获取系统时间,精确到秒struct tm sysTm;time_t tm = time(0);char showTm[100] = { 0 };localtime_s(&sysTm, &tm);//格式化当前时间点到字符数组中sprintf_s(showTm,99,"%04d-%02d-%02d %02d:%02d:%02d", sysTm.tm_year + 1900, sysTm.tm_mon + 1, sysTm.tm_mday, sysTm.tm_hour, sysTm.tm_min, sysTm.tm_sec);//打印当前时间点,,精确到秒printf("%s\n",showTm);//打印当前时间点的详细说明printf("年:%d\n", sysTm.tm_year + 1900);printf("月:%d\n", sysTm.tm_mon + 1);printf("日:%d\n", sysTm.tm_mday);printf("一周中的第几天:%d\n", sysTm.tm_wday);printf("一年中的第几天:%d\n", sysTm.tm_yday);printf("时:%d\n", sysTm.tm_hour);printf("分:%d\n", sysTm.tm_min);printf("秒:%d\n", sysTm.tm_sec);return 0;
}

1.2 struct tm结构体的成员说明和取值范围

struct tm
{int tm_sec;   // seconds after the minute - [0, 60] including leap secondint tm_min;   // minutes after the hour - [0, 59]int tm_hour;  // hours since midnight - [0, 23]int tm_mday;  // day of the month - [1, 31]int tm_mon;   // months since January - [0, 11]int tm_year;  // years since 1900int tm_wday;  // days since Sunday - [0, 6]int tm_yday;  // days since January 1 - [0, 365]int tm_isdst; // daylight savings time flag
};

1.3 优缺点

缺点

只能精确到秒,无法获取毫秒数

优点

可以直接获得当前日期是一年中的第几天,和是星期几

2.方法2

2.1 示例代码

#include <time.h>
#include <stdio.h>
#include <wtypesbase.h>//SYSTEMTIME头文件int main()
{//获取系统时间,精确到毫秒SYSTEMTIME sysTm;GetLocalTime(&sysTm);char bufTime[100] = { 0 };sprintf_s(bufTime, 99, "%04d-%02d-%02d %02d:%02d:%02d.%03d", sysTm.wYear, sysTm.wMonth, sysTm.wDay, sysTm.wHour, sysTm.wMinute, sysTm.wSecond, sysTm.wMilliseconds);printf("%s\n",bufTime);//打印当前时间点的详细说明printf("年:%d\n", sysTm.wYear);printf("月:%d\n", sysTm.wMonth);printf("日:%d\n", sysTm.wDay);printf("一周中的第几天:%d\n", sysTm.wDayOfWeek);printf("时:%d\n", sysTm.wHour);printf("分:%d\n", sysTm.wMinute);printf("秒:%d\n", sysTm.wSecond);printf("毫秒:%d\n", sysTm.wMilliseconds);return 0;
}

2.2 struct SYSTEMTIME结构体说明

typedef struct _SYSTEMTIME {WORD wYear;//年WORD wMonth;//月WORD wDayOfWeek;//星期几WORD wDay;//日WORD wHour;//小时WORD wMinute;//分WORD wSecond;//秒WORD wMilliseconds;//毫秒
} SYSTEMTIME, *PSYSTEMTIME, *LPSYSTEMTIME;

2.3 优缺点

缺点

不能跨平台,需包含Windows头文件

优点

可以获取到毫秒,写法比较简单易理解

3.封装成函数进行调用

#include <time.h>
#include <stdio.h>
#include <wtypesbase.h>//SYSTEMTIME头文件char* GetDate()
{//获取系统时间,精确到毫秒SYSTEMTIME sysTm;GetLocalTime(&sysTm);char bufTime[100] = { 0 };sprintf_s(bufTime, 99, "%04d-%02d-%02d", sysTm.wYear, sysTm.wMonth, sysTm.wDay);return bufTime;
}char* GetDateTime()
{//获取系统时间,精确到毫秒SYSTEMTIME sysTm;GetLocalTime(&sysTm);char bufTime[100] = { 0 };sprintf_s(bufTime, 99, "%04d-%02d-%02d %02d:%02d:%02d.%03d", sysTm.wYear, sysTm.wMonth, sysTm.wDay, sysTm.wHour, sysTm.wMinute, sysTm.wSecond, sysTm.wMilliseconds);return bufTime;
}int main()
{char buf1[100] = { 0 };strcpy_s(buf1, GetDate());printf("%s\n", buf1);char buf2[100] = {0};strcpy_s(buf2,GetDateTime());printf("%s\n",buf2);return 0;
}

windows平台获取系统时间相关推荐

  1. windows上获取系统时间

    一.  通过time_t和tm struct tm {int tm_sec; // seconds after the minute - [0, 60] including leap secondin ...

  2. 获取系统时间出错oracle-,oracle 获取系统时间(转)

    Oracle中如何获取系统当前时间 select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual; ORACLE里获取一个时间的年.季.月.周.日 ...

  3. VC++ 获取系统时间的方法汇总

    1.使用CTime类(获取系统当前时间,精确到秒) ? 1 2 3 4 5 6 CString str; //获取系统时间 CTime tm; tm=CTime::GetCurrentTime();/ ...

  4. C++11新特性,利用std::chrono精简传统获取系统时间的方法

    一.传统的获取系统时间的方法 传统的C++获取时间的方法须要分平台来定义. 相信百度代码也不少. 我自己写了下,例如以下. const std::string getCurrentSystemTime ...

  5. c++ 如何获取系统时间

    DoubleSnake   转载http://blog.csdn.net/zjnig711/article/details/2419081 c++ 如何获取系统时间 2008-04-28 15:34 ...

  6. 【VS开发】VC++ 获取系统时间、程序运行时间(精确到秒,毫秒)的五种方法

    1.使用CTime类(获取系统当前时间,精确到秒) CString str; //获取系统时间 CTime tm; tm=CTime::GetCurrentTime();//获取系统日期 str=tm ...

  7. 笔记1:VC获取系统时间的方法

    笔记1:VC 获取系统时间的方法 推荐的获取方法 获取时间方法种类 各种获取时间方法详解 方法1:time_t变量 和 time(time_t*)方法 方法2:system(" time&q ...

  8. Java 获取系统时间和网络时间(网址)

    Java项目开发时间获取分为:系统时间 和 网络时间 . 一般Java开发中时间获取基本上使用系统当前时间,但是像'社交通信','购物平台'等就需要获取网络时间. import java.net.UR ...

  9. 获取系统时间GetSystemTime、GetLocalTime、GetTickTime

    在说时间之前先说一个经常要用的时间结构体,Linux中与windows一样 SYSTEMTIME 结构体 typedef struct _SYSTEMTIME {WORD wYear;WORD wMo ...

最新文章

  1. HTTP协议基础解读
  2. 200米外遥测心跳定身份,五角大楼全新黑科技,人脸伪装也没用
  3. 【UOJ 51】最接近神的人
  4. 【litrpa专题】首个rpa程序,使用litrpa采集百度地图地铁数据
  5. matelab中simulink报错改正方法
  6. C# 学生简单管理系统 数据库 1.0版本
  7. pycharm检测不到python编译器_1.2 搭建python+pycharm编程开发环境
  8. 配置远程登陆交换机方法
  9. 航迹推演(Odometry)
  10. Servlet容器和IOC容器
  11. 阿里巴巴2021年java研发工程师暑期实习一面及二面面经
  12. Milvus 2.1 版本更新 - 简单可信赖、性能持续提升
  13. Linux 基础总结,这一篇就够了!
  14. 「不安分」的新加坡, 「不拼单」的AI 造城记
  15. 新媒体运营:如何策划出一场完整高效的活动方案?(一) | 黎想
  16. antd表格分页控件显示英文page
  17. Pandas读csv,xlsx,XLS文件,读代表名的文件
  18. Windows Vista正式版何时提供下载
  19. chrome不用翻墙也能用:
  20. QObject::connect: Cannot queue arguments of type ‘XXX‘

热门文章

  1. Keil5识别不到ST-Link的解决办法
  2. JavaScript:简单输出时间
  3. 改善灰暗模糊 美图秀秀还原照片清晰质感
  4. USB接口带不动USB移动硬盘的解决方法
  5. 结合Vue的相关知识进行温度转换
  6. 手把手搭建游戏AI—如何使用深度学习搞定《流放之路》
  7. python如何安装pdfminer_python2/3安装PDFMiner.six将PDF转HTML/TXT - pytorch中文网
  8. Unity中父子物体的坑
  9. html如何设置ie6兼容性视图,ie6浏览器设置兼容性视图的操作步骤
  10. 首都最美志愿者马成朋紧急支援陶然亭核酸现场采样服务