news 2026/6/25 14:09:07

提供一下获取的NTP时间中的月和周的枚举

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
提供一下获取的NTP时间中的月和周的枚举

你这个+CIPSNTPTIME返回的时间字符串格式本质上就是ctime()风格(例如:Wed Feb 4 10:14:03 2026),其中:

  • :固定是 3 字母英文缩写

  • :固定是 3 字母英文缩写

下面把“周 / 月”的枚举(以及字符串表)给你整理好,顺便附一个最常用的解析/映射写法。


周(Weekday)枚举 & 字符串

周的缩写一共 7 个(从周日开始):

  • Sun, Mon, Tue, Wed, Thu, Fri, Sat

常见做法(对齐struct tm.tm_wday习惯:0=Sun):

typedef enum { WEEK_SUN = 0, WEEK_MON, WEEK_TUE, WEEK_WED, WEEK_THU, WEEK_FRI, WEEK_SAT, WEEK_INVALID = 0xFF } weekday_t; static const char* const WEEK_STR[7] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };

月(Month)枚举 & 字符串

月的缩写一共 12 个:

  • Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec

常见做法(对齐struct tm.tm_mon习惯:0=Jan):

typedef enum { MON_JAN = 0, MON_FEB, MON_MAR, MON_APR, MON_MAY, MON_JUN, MON_JUL, MON_AUG, MON_SEP, MON_OCT, MON_NOV, MON_DEC, MON_INVALID = 0xFF } month_t; static const char* const MONTH_STR[12] = { "Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec" };

字符串 → 枚举/数字 映射函数(推荐直接用)

#include <string.h> #include <stdint.h> static weekday_t weekday_from_str(const char *w) { for (int i = 0; i < 7; i++) { if (strcmp(w, WEEK_STR[i]) == 0) return (weekday_t)i; } return WEEK_INVALID; } static month_t month_from_str(const char *m) { for (int i = 0; i < 12; i++) { if (strcmp(m, MONTH_STR[i]) == 0) return (month_t)i; } return MON_INVALID; }

Wed Feb 4 10:14:03 2026解析出周/月(示例)

注意日期前可能有双空格(Feb␠␠4),%d能正确处理:

#include <stdio.h> typedef struct { weekday_t wday; // 0..6, Sun..Sat month_t mon; // 0..11, Jan..Dec int day; // 1..31 int hour, min, sec; int year; // e.g. 2026 } ntp_time_t; int parse_cipsntptime(const char *s, ntp_time_t *out) { char w[4] = {0}, m[4] = {0}; int day, hh, mm, ss, yy; // 只解析形如: "Wed Feb 4 10:14:03 2026" if (sscanf(s, "%3s %3s %d %d:%d:%d %d", w, m, &day, &hh, &mm, &ss, &yy) != 7) { return -1; } out->wday = weekday_from_str(w); out->mon = month_from_str(m); out->day = day; out->hour = hh; out->min = mm; out->sec = ss; out->year = yy; if (out->wday == WEEK_INVALID || out->mon == MON_INVALID) return -2; return 0; }

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/22 16:27:18

Vue 教程 自定义指令 + 生命周期全解析

Vue 3 自定义指令 完整生命周期详解&#xff08;2025–2026 实用版&#xff09; Vue 3 的自定义指令和组件生命周期是中高级开发中非常高频的内容&#xff0c;尤其在以下场景中几乎必考/必用&#xff1a; 复杂表单&#xff08;自动聚焦、输入防抖、权限显隐&#xff09;拖拽…

作者头像 李华
网站建设 2026/6/19 3:28:42

【Linux命令大全】009.备份压缩之gzip命令(实操篇)

【Linux命令大全】009.备份压缩之gzip命令&#xff08;实操篇&#xff09; ✨ 本文为Linux系统备份压缩命令的全面汇总与深度优化&#xff0c;结合图标、结构化排版与实用技巧&#xff0c;专为高级用户和系统管理员打造。 (关注不迷路哈&#xff01;&#xff01;&#xff01;) …

作者头像 李华
网站建设 2026/6/15 5:48:56

【网络安全】六大知名Web安全漏洞靶场

前言 如果想搞懂一个漏洞&#xff0c;最好的方法是先编写出这个漏洞&#xff0c;然后利用它&#xff0c;最后修复它。漏洞靶场模拟真实环境&#xff0c;它为网络安全人员提供了一个安全可控的平台&#xff0c;用于发现、评估和测试应用程序、系统或网络设备的安全漏洞。WEB漏洞…

作者头像 李华
网站建设 2026/6/15 13:31:33

2025年 Java 面试八股文

2025–2026 年 Java 后端面试&#xff08;尤其是金九银十、春招秋招、社招&#xff09;的高频“八股文”已经高度内卷化。面试官越来越倾向于**“八股文 项目场景 真实问题解决”**的组合考察。 下面给你一份2025–2026 年仍然最主流、最常被问到的八股文分类汇总&#xff0…

作者头像 李华
网站建设 2026/6/13 6:42:38

键盘改键神器,小巧实用

今天给大家推荐两款键盘改键和屏蔽的工具&#xff0c;有需要的小伙伴可以下载收藏。 第一款&#xff1a;KeyboardShield KeyboardShield是一款轻量级的键盘屏蔽和键位映射工具&#xff0c;体积大小仅124K&#xff0c;非常小巧&#xff0c;而且还是绿色单文件版&#xff0c;功能…

作者头像 李华
网站建设 2026/6/17 17:36:07

基于springboot的零工市场服务系统设计开发实现

零工市场服务系统的背景 随着共享经济和灵活就业模式的兴起&#xff0c;零工经济在全球范围内快速发展。传统就业模式难以满足企业和个人的多样化需求&#xff0c;零工市场通过数字化平台连接供需双方&#xff0c;提供高效灵活的用工解决方案。零工市场服务系统应运而生&#…

作者头像 李华