gpt4 book ai didi

c++ - 将字符串从 __DATE__ 转换为 time_t

转载 作者:可可西里 更新时间:2023-11-01 14:54:02 26 4
gpt4 key购买 nike

我正在尝试将 __DATE__ 宏生成的字符串转换为 time_t。我不需要成熟的日期/时间解析器,只处理 __DATE__ 宏格式的东西会很棒。

预处理器方法会很漂亮,但函数也同样有效。如果相关,我正在使用 MSVC。

最佳答案

编辑:更正后的函数应如下所示:

time_t cvt_TIME(char const *time) { 
char s_month[5];
int month, day, year;
struct tm t = {0};
static const char month_names[] = "JanFebMarAprMayJunJulAugSepOctNovDec";

sscanf(time, "%s %d %d", s_month, &day, &year);

month = (strstr(month_names, s_month)-month_names)/3;

t.tm_mon = month;
t.tm_mday = day;
t.tm_year = year - 1900;
t.tm_isdst = -1;

return mktime(&t);
}

关于c++ - 将字符串从 __DATE__ 转换为 time_t,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1765014/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com