news 2026/2/24 3:01:09

提供一下获取的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/2/15 9:08:03

灭火不是最后一步,而是系统工程:消防灭火系统安装的底线逻辑

一、什么是消防灭火系统安装&#xff1f;消防灭火系统安装&#xff0c;是指在各类建筑、工业厂房及公共场所中&#xff0c;根据国家消防技术规范和工程设计要求&#xff0c;对自动喷水灭火系统、气体灭火系统、泡沫灭火系统、干粉灭火系统以及相关控制、管网、泵房和联动设备进…

作者头像 李华
网站建设 2026/2/22 11:13:51

同城便民信息小程序源码系统,支持本地商家入驻平台

温馨提示&#xff1a;文末有资源获取方式在信息爆炸的时代&#xff0c;人们对于便捷、高效的生活服务需求日益增长。为了满足这一市场需求&#xff0c;我们隆重推出全新升级的同城便民信息小程序源码系统&#xff0c;经过全面优化和bug修复&#xff0c;提供史上最强大的功能覆盖…

作者头像 李华
网站建设 2026/2/17 22:50:31

基于龙伯格观测器的永磁同步电机无感FOC技术:反电势提取与转子位置速度信息获取

基于龙贝格观测器的永磁同步电机无感FOC 1.采用龙伯格观测器提取电机反电势&#xff0c;使用PLL从反电势中获得转子位置和速度信息。 2.提供算法对应的参考文献和仿真模型&#xff0c;支持技术解答。 仿真模型纯手工搭建。 仿真模型仅供学习参考最近在研究永磁同步电机&#xf…

作者头像 李华
网站建设 2026/2/21 22:47:37

人工智能应用- 语言理解:02. 语言模型

后来&#xff0c;研究者发现词与词之间的关联更能反映语言的规律。一句话是否合理&#xff0c;往往取决于其中的词语搭配是否常见。例如&#xff0c;“我看电视”是合理的&#xff0c;因为“我”和“看”常常搭配在一起&#xff0c;“看”和“电视”也是自然的组合。而类似于“…

作者头像 李华