c++之time_t和struct tm及时间戳的正确使用方式

 更新时间:2024年10月04日 10:52:43   作者:hpuzsk  
C++中处理时间的常用数据类型有time_t和struct tm,time_t通常用来表示时间戳,即从1970年1月1日至今的秒数,struct tm是一个结构体,用来存储年、月、日、时、分、秒等信息,时间戳可以通过gmtime()转换为struct tm类型,反之亦然

c++ time_t和struct tm及时间戳使用

使用方法

如下:

char cNow[32] = { 0 };
    time_t now = time(NULL);
    struct tm *pNow = localtime(&now);
    sprintf(cNow, "%04d:%02d:%02d %02d:%02d:%02d", pNow->tm_year + 1900, pNow->tm_mon + 1, pNow->tm_mday, pNow->tm_hour, pNow->tm_min, pNow->tm_sec);

转换为时间戳的方法

如下:

(unsigned int)now

这样便转化成了标准时间戳的形式。

如果需要把此项写入数据库,sql语句为

sprintf(chSql,"insert into table (timestamp) values (from_unixtime(%d));",(unsigned int)now);

注意这个timestamp 这列要是 timestamp类型或者是datetime类型。

写入到数据库之后的格式为

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • C++实现调用系统时间简单示例

    C++实现调用系统时间简单示例

    这篇文章主要介绍了C++实现调用系统时间,需要的朋友可以参考下
    2014-07-07
  • C++容器vector实现通讯录功能

    C++容器vector实现通讯录功能

    这篇文章主要为大家详细介绍了C++容器vector实现通讯录功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-12-12
  • C语言编程中统计输入的行数以及单词个数的方法

    C语言编程中统计输入的行数以及单词个数的方法

    这篇文章主要介绍了C语言编程中统计输入的行数以及单词个数的方法,利用最基础的循环和判断语句写成,需要的朋友可以参考下
    2015-11-11
  • C语言超详细讲解文件的操作

    C语言超详细讲解文件的操作

    C语言文件操作的方法有很多,函数也有很多你知道哪些呢?下面是小编为大家带来的C语言文件操作的方法,欢迎阅读
    2022-04-04
  • C语言各种符号的使用介绍下篇

    C语言各种符号的使用介绍下篇

    C 语言的基本符号就有 20 多个,每个符号可能同时具有多重含义,而且这些符号之间相互组合又使得 C 语言中的符号变得更加复杂起来
    2022-08-08
  • C++11中longlong超长整型和nullptr初始化空指针

    C++11中longlong超长整型和nullptr初始化空指针

    本文介绍 C++11 标准中新添加的 long long 超长整型和 nullptr 初始化空指针,在 C++11 标准下,相比 NULL 和 0,使用 nullptr 初始化空指针可以令我们编写的程序更加健壮,本文结合示例代码给大家详细讲解,需要的朋友跟随小编一起看看吧
    2022-12-12
  • 从C到C++理解右值引用和移动语义的过程解析

    从C到C++理解右值引用和移动语义的过程解析

    在C++中,理解右值引用(Rvalue references)和移动语义(Move semantics)是现代C++编程的核心部分,它们极大地提高了程序的性能和资源管理效率,下面将介绍从C到C++理解右值引用和移动语义的方法,感兴趣的朋友跟随小编一起看看吧
    2025-11-11
  • C++模拟实现vector流程详解

    C++模拟实现vector流程详解

    这篇文章主要介绍了C++容器Vector的模拟实现,Vector是一个能够存放任意类型的动态数组,有点类似数组,是一个连续地址空间,下文更多详细内容的介绍,需要的小伙伴可以参考一下
    2022-08-08
  • C++ Boost Assign超详细讲解

    C++ Boost Assign超详细讲解

    Boost是为C++语言标准库提供扩展的一些C++程序库的总称。Boost库是一个可移植、提供源代码的C++库,作为标准库的后备,是C++标准化进程的开发引擎之一,是为C++语言标准库提供扩展的一些C++程序库的总称
    2022-12-12
  • Windows下sentry接入C/C++程序的详细过程

    Windows下sentry接入C/C++程序的详细过程

    sentry作为一个开源的软件,发展至今,已经非常成熟。它支持的平台众多,甚至于针对不同的工作者(后台、前端、客户端)都有相应的内容,这篇文章主要介绍了Windows下sentry接入C/C++程序,需要的朋友可以参考下
    2022-09-09

最新评论