时间是一个非常重要的信息,比如写LOG时,就需要把时间输出来,跟踪程序是什么时候出错的。或者当你开发一个银行交易系统时,就要记录当前交易的时间,以便后面可以输出报表,打印给信用卡用户。根据不同的需求,可能需要使用不同的时间,目前有UTC和本地时间。UTC是格林威治时间,也就是全球标准时间。本地时间就是相对于UTC而言的,比如中国北京是在东8区,相对于UTC就多了8个小时。一般使用到的时间都是使用本地时间,也就是调用函数GetLocalTime。
 
函数GetSystemTime和GetLocalTime声明如下:
 
WINBASEAPI
VOID
WINAPI
GetSystemTime(
    __out LPSYSTEMTIME lpSystemTime
    );
   
WINBASEAPI
VOID
WINAPI
GetLocalTime(
    __out LPSYSTEMTIME lpSystemTime
    );
 
lpSystemTime是获取系统时间的结构。
 
调用函数的例子如下:
#001
#002  //获取系统时间。
#003  //蔡军生 2007/11/11 QQ:9073204 深圳
#004  void TestSystem(void)
#005  {
#006         //获取系统的UTC时间。
#007         SYSTEMTIME stUTC;
#008        ::GetSystemTime(&stUTC);
#009
#010         //显示时间的间隔。
#011         const int nBufSize = 256;
#012         TCHAR chBuf[nBufSize];
#013         wsprintf(chBuf,_T("UTC: %u/%u/%u %u:%u:%u:%u %d\r\n"),            
#014               stUTC.wYear, stUTC.wMonth, stUTC.wDay,
#015               stUTC.wHour, stUTC.wMinute, stUTC.wSecond,
#016               stUTC.wMilliseconds,stUTC.wDayOfWeek);
#017         OutputDebugString(chBuf);
#018
#019
#020         //获取当地的时间。
#021         SYSTEMTIME stLocal;
#022        ::GetLocalTime(&stLocal);
#023
#024         //显示时间的间隔。
#025         wsprintf(chBuf,_T("Local: %u/%u/%u %u:%u:%u:%u %d\r\n"),                 
#026               stLocal.wYear, stLocal.wMonth, stLocal.wDay,
#027               stLocal.wHour, stLocal.wMinute, stLocal.wSecond,
#028               stLocal.wMilliseconds,stLocal.wDayOfWeek);
#029         OutputDebugString(chBuf);
#030
#031  }
#032
 
上面两个函数在我测试时输出的结果,如下:
UTC: 2007/11/11 1:53:1:46 0
Local: 2007/11/11 9:53:1:46 0

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/caimouse/archive/2007/11/11/1878569.aspx

转载于:https://www.cnblogs.com/lancidie/archive/2011/03/18/1988137.html

Windows API一日一练(70)GetSystemTime和GetLocalTime函数相关推荐

  1. Windows API一日一练(20)LoadIcon和LoadCursor函数-程序图标设置和鼠标的样式

    主目录传送门 https://blog.csdn.net/zb774095236/article/details/108291755 本次学习的源码模板下载: 1.百度云:https://pan.ba ...

  2. Windows API一日一练 59 CreateFileMapping和MapViewOfFile函数

    在开发软件过程里,也经常碰到进程间共享数据的需求.比如 A 进程创建计算数据, B 进程进行显示数据的图形.这样的开发方式可以把一个大程序分开成独立的小程序,提高软件的成功率,也可以更加适合团队一起开 ...

  3. Windows API一日一练(59)CreateFileMapping和MapViewOfFile函数

    在开发软件过程里,也经常碰到进程间共享数据的需求.比如 A 进程创建计算数据, B 进程进行显示数据的图形.这样的开发方式可以把一个大程序分开成独立的小程序,提高软件的成功率,也可以更加适合团队一起开 ...

  4. Windows API一日一练(10-12)GetMessage TranslateMessage DispatchMessage函数

    主目录传送门 https://blog.csdn.net/zb774095236/article/details/108291755 本次学习的源码模板下载: 1.https://pan.baidu. ...

  5. Windows API一日一练(29)SelectObject和DeleteObject函数

    Windows 显示设备的属性,共有下面几种:位图.画刷.字体.画笔.区域.如果要设置它们到当前设备里,就需要使用 SelectObject 函数,比如上面介绍的字体设置,就会用到这个函数.当你创建一 ...

  6. Windows API一日一练 29 SelectObject和DeleteObject函数

    Windows 显示设备的属性,共有下面几种:位图.画刷.字体.画笔.区域.如果要设置它们到当前设备里,就需要使用 SelectObject 函数,比如上面介绍的字体设置,就会用到这个函数.当你创建一 ...

  7. Windows API一日一练(56)SetEndOfFile和GetFileSizeEx函数

    有一天,我正在开发BT软件,它有这样的一个功能,就是先把文件的大小分配好,然后再慢慢地往里面对应的位置写入相应的数据.这样的好处,就是可以先把磁盘空间占用起来,以便后面的下载顺利进行.要实现这个功能, ...

  8. Windows API一日一练(47)CreateSemaphore和ReleaseSemaphore函数

    在开发软件的过程中,多线程的程序往往需要实现相互通讯,比如几个线程添加一个消息到队列里,而另一个线程在睡眠时,就需要唤醒那个线程来处理事情.在这其中,就需要使用到信号量来进行同步.CreateSema ...

  9. Windows API一日一练 47 CreateSemaphore和ReleaseSemaphore函数

    在开发软件的过程中,多线程的程序往往需要实现相互通讯,比如几个线程添加一个消息到队列里,而另一个线程在睡眠时,就需要唤醒那个线程来处理事情.在这其中,就需要使用到信号量来进行同步.CreateSema ...

最新文章

  1. golang channel本质——共享内存
  2. VTK:可视化之Blow
  3. 回调函数与PHP实例
  4. pat 乙级 1010 一元多项式求导(C++)
  5. 如何判断一个点在任意四边形内
  6. lisp 线性标注自动避让_《数据标注工程》第一章学习笔记及作业:数据标注概述...
  7. 爬虫-07-请求过程
  8. CodeVs 1017 乘积最大(DP)
  9. android学习——popupWindow 在指定位置上的显示
  10. Linux -- 特殊权限 (转)
  11. 黑域助手连接服务器才能用吗,黑域怎么免root使用?root使用教程
  12. html5转ipk,OpenWrt更新ipk教程
  13. 转载:汽车上的控制器简介
  14. Zookeeper介绍、原理及应用
  15. 初中计算机教案十进制转二进制,十进制二进制教案
  16. 新手入门PS人像磨皮教程
  17. EFS与NTFS联合应用解析
  18. (二)如何识别骗子(酒托、咖啡托、各种托)
  19. mysql 查询主键和主键列,查询Mysql表名、主键、列名
  20. Python对列表去重的多种方法(四种方法)

热门文章

  1. Docker 17.03系列教程(一)Docker EE/Docker CE简介与版本规划
  2. exchange 2013 升级CU15,提示“上次安装完成后没有重启”的提示
  3. Java从零开始学四十六(Junit)
  4. Visual C++ 2011-6-6
  5. javascript入门·简单运算和数据类型转换
  6. 接口文档-swagger-bootstrap
  7. 004_strace工具
  8. flex布局的盒子模型
  9. redis, memcached, mongo性能比较
  10. Maven学习教程(六)