在C++中获取当前时间并转换为可读时间格式(Win32和Linux通用)
2014-08-11 13:51
375 查看
所谓的跨平台是因为使用了不同的API, 用宏定义区别Windows和Unix.
方法如下:
[cpp] view
plaincopy
#ifdef WIN32
#define LOCALTIME_R(t) localtime((t))
#else
#define LOCALTIME_R(t) localtime_r((t), (struct tm *)&tmres)
#endif
如此定义之后, 只需要如下代码即可:
[cpp] view
plaincopy
#include <stdio.h>
#include <stdio.h>
#include <time.h>
main()
{
struct tm *tmNow;
time_t long_time;
time(&long_time ); /* Get time as long integer. */
tmNow = LOCALTIME_R( &long_time ); /* Convert to local time. */
printf("%d年%d月%d日 %d时%d分%d秒",tmNow->tm_year, tmNow->tm_mon + 1,
tmNow->tm_mday, tmNow->tm_hour, tmNow->tm_min, tmNow->tm_sec);
return;
}
如此即可在windows或Linux下跨平台使用该段代码.
方法如下:
[cpp] view
plaincopy
#ifdef WIN32
#define LOCALTIME_R(t) localtime((t))
#else
#define LOCALTIME_R(t) localtime_r((t), (struct tm *)&tmres)
#endif
如此定义之后, 只需要如下代码即可:
[cpp] view
plaincopy
#include <stdio.h>
#include <stdio.h>
#include <time.h>
main()
{
struct tm *tmNow;
time_t long_time;
time(&long_time ); /* Get time as long integer. */
tmNow = LOCALTIME_R( &long_time ); /* Convert to local time. */
printf("%d年%d月%d日 %d时%d分%d秒",tmNow->tm_year, tmNow->tm_mon + 1,
tmNow->tm_mday, tmNow->tm_hour, tmNow->tm_min, tmNow->tm_sec);
return;
}
如此即可在windows或Linux下跨平台使用该段代码.
相关文章推荐
- 在C++中获取当前时间并转换为可读时间格式(Win32和Linux通用)
- C++如何获取当前时间并转换成相应的格式字符串.
- C++如何获取当前时间并转换成相应的格式字符串
- Linux/Unix 时间戳的计时以及转换成通用格式
- Java获取当前时间,时间戳转换为时间格式
- js获取当前时间,并将标准日期格式转换成Long型
- JAVA,jsp,oracle获取系统当前时间以及日期格式转换!
- java/python中获取当前系统时间,并与字符串相互转换格式,或者转化成秒数,天数等整数
- js获取当前时间转换时间格式yyyy-mm-dd hh:mm:ss
- 获取当前系统时间转换成想要的格式
- Linux下时间格式转换及获取方法
- php获取当前时间和转换格式
- Js获取当前日期时间、比较及正则表达式转换格式
- C++ 获取当前时间毫秒数(兼容windows和linux)
- linux C++ 获取当前日期时间
- C++版下载每天网页&txt,c++获取当前时间yyyymmdd格式
- 日期格式和时间戳相互转换 外带一个获取当前程序根目录
- C++ 将当前系统时间转换成标准格式的时间和时间戳
- linux C++ 获取当前时间,以标准时间“年-月-日 时:分:秒”的形式输出,且秒后边跟小数精确到毫秒
- JS获取当前时间或者把毫秒转换成yyyy-MM-dd的格式