news 2026/4/23 9:48:47

提供一下获取的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/4/23 9:49:25

Undertow不支持大文件上传,使用application.yml配置失效

这是一个 Spring Boot 配置类&#xff0c;用于自定义 Undertow Web 服务器的配置&#xff0c;主要目的是调整请求体&#xff08;包括文件上传&#xff09;的最大大小限制。 一、类结构说明 1. Configuration 表明这是一个 Spring 配置类&#xff0c;会在应用启动时被加载。用…

作者头像 李华
网站建设 2026/4/23 9:47:16

基于springboot的健身服务与轻食间平台管理系统设计实现

背景分析 现代生活节奏加快&#xff0c;健康管理需求显著增长。健身与饮食作为健康管理的两大核心要素&#xff0c;传统服务模式存在信息割裂、效率低下等问题。健身机构与轻食商家缺乏数字化协同平台&#xff0c;用户难以获得科学的一体化健康解决方案。 行业痛点 健身行业…

作者头像 李华
网站建设 2026/4/23 9:48:00

如何做谷歌seo搜索优化?实战派老鸟的干货分享

很多人觉得做谷歌排名是一件特别玄学的事情&#xff0c;苦苦追寻那些复杂的算法更新看看&#xff0c;最后反而把自己搞糊涂了。其实回归本质&#xff0c;谷歌就是一个给用户找答案的工具。你想排在前面&#xff0c;就得证明你的答案比别人的更靠谱、更专业。今天大家不聊那些虚…

作者头像 李华
网站建设 2026/4/23 9:51:06

Tomcat的概念

Tomcat&#xff08;全称 Apache Tomcat&#xff09;是一个开源的、轻量级的Web应用服务器和Servlet容器&#xff0c;由Apache软件基金会开发和维护。它主要用于部署和运行基于Java的Web应用程序&#xff0c;特别是遵循Java Servlet、JavaServer Pages&#xff08;JSP&#xff0…

作者头像 李华
网站建设 2026/4/23 16:12:10

48节点配电系统仿真:Matlab/Simulink的实战应用

48节点 配电系统仿真 Matlab/simulink质量过硬&#xff0c;非诚勿扰&#xff01; 该模型依据实际配电网(含单相供电)搭建&#xff0c;电压等级10kV/380V&#xff0c;频率50Hz&#xff0c;贴近我国电网实际。 可用于&#xff1a; 1、研究SVG配电系统对节点电压的影响&#xff1…

作者头像 李华
网站建设 2026/4/23 11:15:34

人工智能应用-机器听觉:8. 基于深度学习的语音合成技术

近年来&#xff0c;基于深度神经网络的端到端语音合成取得了显著进展。所谓“端到端”方法&#xff0c;是指从输入文本到生成语音的整个过程由一个统一的神经网络模型完成。这一技术不仅简化了合成系统的结构&#xff0c;而且显著提升了合成语音的自然度、流畅性和表现力。 端到…

作者头像 李华