c++,每间隔24小时获取1次系统时间,并且如果相邻两次获取到的时间之间包含2017.01.01,给出提示。
答案:2 悬赏:50 手机版
解决时间 2021-02-18 13:10
- 提问者网友:雾里闻花香
- 2021-02-17 13:46
c++,每间隔24小时获取1次系统时间,并且如果相邻两次获取到的时间之间包含2017.01.01,给出提示。
最佳答案
- 五星知识达人网友:纵马山川剑自提
- 2021-02-17 15:24
我认为你的2017.01.01是一个时间段,可以粗略地这么做:
#include
#include
int main(int argv, char** argc)
{
tm mintm;
mintm.tm_yday = 2017 - 1900;
mintm.tm_mon = 1 - 1;
mintm.tm_mday = 1;
mintm.tm_hour = 0;
mintm.tm_min = 0;
mintm.tm_sec = 0;
time_t mintt = mktime(&mintm);
tm mxatm;
mxatm.tm_yday = 2017 - 1900;
mxatm.tm_mon = 1 - 1;
mxatm.tm_mday = 1;
mxatm.tm_hour = 59;
mxatm.tm_min = 59;
mxatm.tm_sec = 59;
time_t maxtt = mktime(&mxatm);
time_t last = time(0);
while (true)
{
time_t curr = time(0);
if (last <= mintt && curr >= maxtt)
{
printf("包含2017.01.01\n");
}
last = curr;
Sleep(60 * 60 * 24 * 1000);
}
return 0;
}
#include
#include
int main(int argv, char** argc)
{
tm mintm;
mintm.tm_yday = 2017 - 1900;
mintm.tm_mon = 1 - 1;
mintm.tm_mday = 1;
mintm.tm_hour = 0;
mintm.tm_min = 0;
mintm.tm_sec = 0;
time_t mintt = mktime(&mintm);
tm mxatm;
mxatm.tm_yday = 2017 - 1900;
mxatm.tm_mon = 1 - 1;
mxatm.tm_mday = 1;
mxatm.tm_hour = 59;
mxatm.tm_min = 59;
mxatm.tm_sec = 59;
time_t maxtt = mktime(&mxatm);
time_t last = time(0);
while (true)
{
time_t curr = time(0);
if (last <= mintt && curr >= maxtt)
{
printf("包含2017.01.01\n");
}
last = curr;
Sleep(60 * 60 * 24 * 1000);
}
return 0;
}
全部回答
- 1楼网友:持酒劝斜阳
- 2021-02-17 17:00
while(1)
{
time_t t = time(0);
tm* tmTime = localtime(&t);
char buf[30] = {0};
strftime(buf, 29, "%Y-%m-%d", tmTime);
string timeNow = buf;
if(timeNow == "2017-01-01")
{
// 提示
}
Sleep(24 * 3600 * 1000);
}
{
time_t t = time(0);
tm* tmTime = localtime(&t);
char buf[30] = {0};
strftime(buf, 29, "%Y-%m-%d", tmTime);
string timeNow = buf;
if(timeNow == "2017-01-01")
{
// 提示
}
Sleep(24 * 3600 * 1000);
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯