C++ 取得系统当前时间

   #include

  //* 方法一

  time_t tt = time(NULL);//这句返回的只是一个时间cuo

  tm* t= localtime(&tt);

  printf("%d-%02d-%02d %02d:%02d:%02dn",

  t->tm_year + 1900,

  t->tm_mon + 1,

  t->tm_mday,

  t->tm_hour,

  t->tm_min,

  t->tm_sec);

  //* 方法二

  SYSTEMTIME st = {0};

  GetLocalTime(&st);

  printf("%d-%02d-%02d %02d:%02d:%02dn",

  st.wYear,

  st.wMonth,

  st.wDay,

  st.wHour,

  st.wMinute,

  st.wSecond);

  下面几个,是网上找的:转载地址:http://apps.hi.baidu.com/share/detail/17815869

  个人觉得第二种还是比较实用的,而且也是最常用的~

  不过当计算算法耗时的时候,不要忘记second,不能只要用Milliseconds来减,不然后出现负值,若是算法耗时太长就得用minutes啦。再不然,就hours……

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

  #include

  #include

  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

  #include

  int main( void )

  {

  SYSTEMTIME sys;

  GetLocalTime( &sys );

  printf( "%4d/%02d/%02d %02d:%02d:%02d.%03d 星期%1dn",sys.wYear,sys.wMonth,sys.wDay,sys.wHour,sys.wMinute, sys.wSecond,sys.wMilliseconds,sys.wDayOfWeek);

  return 0;

  }

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

  //此文件必须是c++文件

  #include

  #include

  using namespace std;

  void main()

  {

  system("time");

  }

  //方案四,将当前时间折算为秒级,再通过相应的时间换算即可

  //此文件必须是c++文件

  #include

  #include

  using namespace std;

  int main()

  {

  time_t now_time;

  now_time = time(NULL);

  cout<

  return 0;

  }

  注意:GetLocalTime()与GetSystemTime()是有区别的

时间: 2024-07-30 00:41:30

C++ 取得系统当前时间的相关文章

MySQL获取系统当前时间的函数

环境:MySQL Server 5.1 问题:MySQL获取系统当前时间的函数 解决: NOW()函数以'YYYY-MM-DD HH:MM:SS'返回当前的日期时间,可以直接存到DATETIME字段中. CURDATE()以'YYYY-MM-DD'的格式返回今天的日期,可以直接存到DATE字段中. CURTIME()以'HH:MM:SS'的格式返回当前的时间,可以直接存到TIME字段中. 示例: SQL: select now() as 当前日期时间; select curdate() as 今

追踪Windows系统登录时间的三种方法

在局域网工作环境中,常常有计算机被他人偷偷攻击,为了寻找幕后攻击黑手,我们需要让Windows系统自动记忆非法攻击者登录系统的时间,以便从中寻找蛛丝马迹.其实,追踪记忆系统登录时间的方法有很多,这不,本文下面提供的几种方法,可以帮助我们随意所欲查看到非法攻击者登录系统的具体时间. 1.巧用策略,记录上次登录时间 在多人共同使用同一台计算机的情况下,我们经常会碰到这样一种现象,那就是当自己临时离开计算机的这段时间内,有其他用户偷偷利用自己的账号登录系统,查看自己的操作记录以及其他访问痕迹.为了弄清

Linux中如何查看系统开机时间

有时候需要查看Linux系统运行了多久时间,此时需要知道上次开机启动时间: 有时候由于断电或供电故障突然停机,需要查看Linux开机时间/重启时间:  下面总结一些查看Linux开机关机时间的方法(非常全面) 1: who 命令查看 who -b 查看最后一次系统启动的时间. who -r 查看当前系统运行时间 [root@DB-Server ~]# who -b system boot May 11 09:27 2: last  reboot 如下所示last reboot可以看到Linux系

win8系统下时间和日期自动同步怎么设置

  win8系统下时间和日期自动同步怎么设置         方法一: 1.登陆windows 8桌面,左键单击任务栏右下角的显示时间,选择更改日期和时间设置. 2.进入日期和时间窗口,选择Internet时间-更改设置-勾选:与Internet时间服务器同步(默认服务器地址:time.windows.com)-立即更新-确定,系统将自动同步系统时间. 方法二: 1.可以进入Win 8系统桌面后运行Windows+X(或鼠标移动到左下角点击右键),左键单击控制面板. 2.进入控制面板后选择:时钟

如何使用命令提示符查询安装win7系统的时间?

  如何使用命令提示符查询安装win7系统的时间? 1.开始 > 运行(快捷键 Win+R); 2.英文系统输入: cmd /k systeminfo | find "Original Install Date" 中文系统输入: cmd /k systeminfo | find "初始安装日期" update:请将双引号更换为英文输入状态下的双引号,WP 自动替换成了全角 小编提示:大家可以试试直接运行systeminfo 还会发现许多意想不到的惊喜哦! wi

js获得当前系统日期时间的方法

  这篇文章主要介绍了js获得当前系统日期时间的方法,涉及javascript操作日期时间的相关技巧,非常简单实用,需要的朋友可以参考下 本文实例讲述了js获得当前系统日期时间的方法.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTM

XP系统开机时间长或者卡住如何解决

  XP系统开机时间长或者卡住如何解决 1. 打开控制面板-管理工具-组件服务 2. 控制台根目录下面有三个目录,服务(本地)里面找到事件日志(Event Log). 3.将Event Log服务改为自动. 4.重启. 为什么Event Log没有起动会导致开机慢呢?Prefetch(预存取)需要这个服务,C:windowsprefetch下的文件要依靠这个服务来记录.

JS之Date对象和获取系统当前时间详解

 本篇文章主要是对JS之Date对象和获取系统当前时间进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 一.Date对象 每天一对象,今天来看看Date对象,相对于时间大家一定很熟悉,应为以前在网站中很多地方都会遇到这样的时间特效.温故而知新,今天我们来回忆一下Date对象.   我们首先来看看他的定义: dateObj = new Date() dateObj = new Date(dateVal) dateObj = new Date(year, month, date[, hour

mysql创建表,默认系统当前时间

问题描述 mysql创建表,默认系统当前时间 2C CREATE TABLE tmp_webservice_sql_log (ID INT(10) NOT NULL AUTO_INCREMENTSEND_DATA_TIME DATETIME DEFAULT NULLSEND_STATE VARCHAR(10) DEFAULT NULLINTER_NAME VARCHAR(100) NOT NULLCREATE_TIME DATETIME NOT NULL DEFAULT CURRENT_TIME

java-开发JAVA程序如何获取系统编译时间?

问题描述 开发JAVA程序如何获取系统编译时间? 开发JAVA程序如何获取系统编译时间?哪位大神知道的给条具体思路啊,在线坐等,谢谢! 解决方案 long start = System.currentTimeMillis();/*中间是你需要测试的代码*/long end = System.currentTimeMillis(); long time = end-start; 解决方案二: 这我猜要改编译器才可以 解决方案三: 这个问题很好解决呀!创建对象就可以了,直接new Date() 不知