计算到特定时间的分钟数? (C)

标签 c time

计算到晚上 9 点(今天或明天)的分钟数的最简单方法是什么?

正在查看 mktime(),但要处理所有这些似乎很麻烦。

最佳答案

只需计算今天晚上 9 点的差值。如果它是负数,则添加 24 小时以获得 明天 晚上 9 点的增量。

#include <stdio.h>
#include <time.h>

int main(int argc, char* argv[]) {
    struct tm* tm;
    time_t ts=time(NULL);
    if(tm=localtime(&ts)) {
            long int delta;
            tm->tm_hour = 21;
            tm->tm_min = 0;
            tm->tm_sec = 0;
            delta = mktime(tm) - ts;
            if(delta<0) {
                    delta+=24*60*60;
            }
            printf("%d minutes til (next)9pm\n",delta/60);
    }
    return 0;
}

关于计算到特定时间的分钟数? (C),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1515006/

相关文章:

Java 文件上次修改返回 0

javascript - 更新 AngularJS 应用程序中的时间

c - 为什么不释放内存是不好的做法?

c - C 中使用分隔符分割字符串

c - 在 BST 中查找 sum=0 的三元组 - 使用以下代码的时间复杂度

C 风格的结构声明

c# - 在 C# 中存储时间的类型和在 T-SQL 中的相应类型

time - gnuplot用x值标记特定的y数据点

java - 如何使用Java减去两个系统时间

c - 如何使用malloc或其他函数在Ram中分配所需的地址?