修正了跨天计时在一些情况下不归零的bug

This commit is contained in:
千嶂夹城 2025-05-26 14:47:32 +08:00
parent bb048120bf
commit f2a9423457

View File

@ -16,9 +16,8 @@ void saveData(){
FILE *fp = fopen("save.txt", "w");
if(fp!=NULL){
time_t timeNow = time(0);
tm *curTime;
if(curTime->tm_hour<4) curTime = localtime(&timeNow-86400);
else curTime = localtime(&timeNow);
tm *curTime = localtime(&timeNow);
if(curTime->tm_hour<4) curTime = localtime(&timeNow-86400);
fprintf(fp, "%d %d %d %d", blackListTimeCount,curTime->tm_year,curTime->tm_mon,curTime->tm_mday);
fclose(fp);
}
@ -46,9 +45,8 @@ int main(){
int curYear,curMonth,curDay;
fscanf(fp, "%d%d%d%d", &blackListTimeCount,&curYear,&curMonth,&curDay);
time_t timeNow = time(0);
tm *curTime;
if(curTime->tm_hour<4) curTime = localtime(&timeNow-86400);
else curTime = localtime(&timeNow);
tm *curTime = localtime(&timeNow);
if(curTime->tm_hour<4) curTime = localtime(&timeNow-86400);
if(curTime->tm_year!=curYear||curTime->tm_mon!=curMonth||curTime->tm_mday!=curDay){
blackListTimeCount = 0;
}