获取当前系统本地时间,精确到毫秒的实例

实例如下:

#include <sys/timeb.h>
#include <chrono>

char* cur_time_c(char strDateTime[32])
{
 struct timeb tp_cur;
 ftime(&tp_cur);

 struct tm btm;

#ifdef WIN32
 localtime_s(&btm, &tp_cur.time);
#else
 localtime_r(&tp_cur.time, &btm);
#endif

 sprintf(strDateTime, "%04d-%02d-%02d %02d:%02d:%02d.%03d",
  btm.tm_year + 1900, btm.tm_mon + 1, btm.tm_mday,
  btm.tm_hour, btm.tm_min, btm.tm_sec, tp_cur.millitm);

 return strDateTime;
}

char* cur_time_cpp11(char strDateTime[32])
{
 static const std::chrono::hours = EIGHT_HOURS(8);

 auto nowLocalTimeCount
  = std::chrono::system_clock::now().time_since_epoch()
  + EIGHT_HOURS;

 std::chrono::hours now_h
  = std::chrono::duration_cast<std::chrono::hours>(nowLocalTimeCount);
 std::chrono::minutes now_m
  = std::chrono::duration_cast<std::chrono::minutes>(nowLocalTimeCount);
 std::chrono::seconds now_s
  = std::chrono::duration_cast<std::chrono::seconds>(nowLocalTimeCount);
 std::chrono::milliseconds now_ms
  = std::chrono::duration_cast<std::chrono::milliseconds>(nowLocalTimeCount);

 sprintf(strDateTime, "%02d:%02d:%02d.%03d",
  now_h % 24, now_m % 60, now_s % 60, now_ms % 1000);

 return strDateTime;
}

以上这篇获取当前系统本地时间,精确到毫秒的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • C语言获取Linux系统精确时间的方法

    gettimeofday()函数的使用方法 1.函数原型 #include <sys/time.h> int gettimeofday(struct timeval *tv, struct timezone *tz); 2.说明 gettimeofday()会把目前的时间用tv 结构体返回,当地时区的信息则放到tz所指的结构中 3.结构体 struct timeval{ long tv_sec;/*秒*/ long tv_usec;/*微妙*/ }: struct timezone{ int

  • C++中获取UTC时间精确到微秒的实现代码

    在日常开发过程中经常会使用到时间类函数的统计,其中获取1970年至今的UTC时间是比较常使用的,但是在windows下没有直接能够精确到微妙级的函数可用.本文提供方法正好可以解决这类需求问题. 下面先给出C++实现代码: 复制代码 代码如下: #ifndef UTC_TIME_STAMP_H_#define UTC_TIME_STAMP_H_ #include <windows.h>#include <sys/timeb.h>#include <time.h> #if

  • 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(

  • 获取当前系统本地时间,精确到毫秒的实例

    实例如下: #include <sys/timeb.h> #include <chrono> char* cur_time_c(char strDateTime[32]) { struct timeb tp_cur; ftime(&tp_cur); struct tm btm; #ifdef WIN32 localtime_s(&btm, &tp_cur.time); #else localtime_r(&tp_cur.time, &btm)

  • oracle获取当前时间,精确到毫秒并指定精确位数的实现方法

    oracle获得当前时间的,精确到毫秒   可以指定精确豪秒的位数 select to_char(systimestamp, 'yyyymmdd hh24:mi:ss.ff ') from dual;--20120516 11:56:40.729083 select to_char(systimestamp, 'yyyymmdd hh24:mi:ss.ff3') from dual;--20120516 11:58:42.755 desc ct_cdr_comparison 名称        

  • C/C++如何获取当前系统时间的实例详解

     C/C++如何获取当前系统时间的实例详解 C库中与系统时间相关的函数定义在<time.h>头文件中, C++定义在<ctime>头文件中. 一.time(time_t*)函数 函数定义如下: time_t time (time_t* timer); 获取系统当前日历时间 UTC 1970-01-01 00:00:00开始的unix时间戳 参数:timer 存取结果的时间指针变量,类型为time_t,指针变量可以为null.如果timer指针非null,则time()函数返回值变量

  • C/C++标准库之转换UTC时间到local本地时间详解

    前言 UTC 时间DateTime.UtcNow 和 系统本地时间 DateTime.Now 相差8个时区 ,美国本地时间和北京时间相差15个时区: 美国,而一般使用UTC时间方便统一各地区时间差异. 场景 1.如果有面向全球用户的网站, 一般在存储时间数据时存储的是UTC格式的时间, 这样时间是统一的, 并可以根据当地时区来进行准确的转换. 2.存储本地时间的问题就在于如果换了时区, 那么显示的时间并不正确. 所以我们存储时间时最好还是存储UTC时间,便于正确的转换. 说明 1.C/C++标准

  • asp.net获取系统当前时间的方法详解

    本文实例讲述了asp.net获取系统当前时间的方法.分享给大家供大家参考,具体如下: 在c# / ASP.net中我们可以通过使用DataTime这个类来获取当前的时间.通过调用类中的各种方法我们可以获取不同的时间:如:日期(2008-09-04).时间(12:12:12).日期+时间(2008-09-04 12:11:10)等. //获取日期+时间 DateTime.Now.ToString(); // 2008-9-4 20:02:10 DateTime.Now.ToLocalTime().

  • 时间戳与时间相互转换(php .net精确到毫秒)

    /** 获取当前时间戳,精确到毫秒 */ function microtime_float() { list($usec, $sec) = explode(" ", microtime()); return ((float)$usec + (float)$sec); } /** 格式化时间戳,精确到毫秒,x代表毫秒 */ function microtime_format($tag, $time) { list($usec, $sec) = explode(".",

  • Oracle如何获取系统当前时间等操作实例

    获取系统当前时间 date类型的 select sysdate from dual; char类型的 select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual; select to_char(sysdate, 'yyyy' ) from dual; --年 select to_char(sysdate, 'MM' ) from dual; --月 select to_char(sysdate, 'dd' ) from dual; --日

  • PHP获取当前系统时间的方法小结

    一.获取当前时间戳 方法1:通过time函数 time(); 方法2:通过$_SERVER中的REQUEST_TIME元素 $_SERVER['REQUEST_TIME']; 方法3:通过strtotime函数 strtotime('now')); 二.获取当前时间 通过date函数格式化时间戳 echo date('Y-m-d h:i:s', time()); // 2018-10-3 15:57:05 三.时区问题 上述方法都存在时区问题,具体解决: 方法一:php.ini中修改为中国时区

  • C++如何获取当前系统时间及格式化输出

    本文主要使用time() 及strftime() 函数实现c++获取系统时间. C++系统和时间相关的函数基本上都是使用C语言提供的标准接口 在程序中获取系统时间是常见的操作,很多情况下使用系统提供的time函数即可获取. time() 是系统C语言的标准接口,通过man time 或者man 2 time 可查看详细的使用方法. include <time.h> include <stdio.h> int main() { time_t tt = time(NULL); tm*

随机推荐