当前位置: 首页 > article >正文

Ubuntu 下 nginx-1.24.0 源码分析 ngx_tm_t 类型

src\os\unix\ngx_time.h 中

typedef struct tm             ngx_tm_t;

tm 是 C 标准库中定义的一个结构体,通常用于表示日期和时间的信息。它通常定义在 <time.h> 头文件中

struct tm {
    int tm_sec;       /* 秒,范围 0-59 */
    int tm_min;       /* 分钟,范围 0-59 */
    int tm_hour;      /* 小时,范围 0-23 */
    int tm_mday;      /* 一个月中的第几天,范围 1-31 */
    int tm_mon;       /* 月份,范围 0-11(0 表示一月) */
    int tm_year;      /* 年份,从 1900 年开始计算 */
    int tm_wday;      /* 星期几,范围 0-6(0 表示星期日) */
    int tm_yday;      /* 一年中的第几天,范围 0-365 */
    int tm_isdst;     /* 是否为夏令时,1 表示是,0 表示否 */
};

tm 结构体用于存储日期和时间的各个组成部分,便于程序对时间进行分解和处理

在 Ubuntu 的 glibc 实现中,tm 结构体确实包含 两个 GNU 扩展成员

struct tm {
    // 标准成员(共9个,如前所述)
    int tm_sec;   
    int tm_min;
    // ... 其他标准字段 ...

    // glibc 扩展成员
    long tm_gmtoff;   // 秒为单位的时间偏移(UTC东偏为正)
    const char *tm_zone; // 时区名称缩写(如"CST")
};


http://www.kler.cn/a/542321.html

相关文章:

  • 7.推荐系统的评价与优化
  • 嵌入式硬件篇---原码、补码、反码
  • 【JVM详解二】常量池
  • 每日Attention学习22——Inverted Residual RWKV
  • 等级保护2.0|网络安全服务
  • springboot 事务管理
  • Node.js怎么调用到打包的python文件呢
  • 支持高并发的 Web 应用系统架构中LVS和keepalived是什么?
  • RabbitMQ 如何设置限流?
  • 安卓基础(Intent)
  • 运用 LangChain 编排任务处理流水线,实现多轮对话场景
  • 【C语言标准库函数】标准输入输出函数详解[4]:二进制文件读写函数
  • 通用的将jar制作成docker镜像sh脚本
  • 机器学习 - 数据的特征表示
  • 《Transformer架构完全解析:从零开始读懂深度学习的革命性模型》
  • 【C++指南】解锁C++ STL:从入门到进阶的技术之旅
  • LabVIEW 开发航天项目软件
  • SSM开发(十一) mybatis关联关系多表查询(嵌套查询,举例说明)
  • unity碰撞的监测和监听
  • SpringBoot 项目中使用Log4j2详细(避坑)
  • 在Uniapp中使用阿里云OSS插件实现文件上传
  • 高级java每日一道面试题-2025年02月03日-服务器篇[Nginx篇]-Nginx是如何处理一个HTTP请求的呢 ?
  • 【leetcode】滑动窗口刷题总结
  • Python 爬虫基础教程
  • 物联网水质监测系统设计与实现/基于STM32的水产养殖云监控系统设计
  • Kubernetes 最佳实践:Top 10 常见 DevOps/SRE 面试问题及答案