操作 struct tm 中的 tm_mon?

2024-04-02

我无法理解这个程序,即tm_mon +1 part.

我是 C 语言新手,通常我总是编写自己的小程序来应对我在遵循的课程书中设置的任何挑战,但我不得不咨询其他人来解决这个问题(它是课本和他们的代码,所以不是我的),我不明白为什么+1被添加到tm_mon。我明白那个tm_mon = January但我不清楚 +1 有何不同,并且why它是 +1 而不是 + 2 或任何其他数字!

该程序旨在告诉您 400 万秒后的日期。

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

int main(int argc, const char * argv[])
{

    long secondsToFuture = time(NULL) + 4000000;
    struct tm futureTime;
    localtime_r(&secondsToFuture, &futureTime);

    printf("The date in 4,000,000 seconds will be %d-%d-%d\n", futureTime.tm_mon + 1, futureTime.tm_mday, futureTime.tm_year + 1900);

    return 0;
}

感谢任何帮助,因为我对此有点困惑。


看看下表。如您所见,tm_mon 是从 0=一月到 11=十二月的值。

'*' tm_sec 一般为 0-59。额外的范围是为了适应某些系统中的闰秒。

EDIT

那么在你的情况下没有+1如果日期为 2015 年 1 月 1 日,实际输出将是

The date in 4,000,000 seconds will be 0/1/2015

With +1将推动输出

The date in 4,000,000 seconds will be 1/1/2015
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

操作 struct tm 中的 tm_mon? 的相关文章

随机推荐

  • Django:如何在可重用应用程序中处理导入

    我刚刚开始使用 django 我不太清楚 我应该如何编写一个可以稍后重用的应用程序 在我阅读的每个教程中 我都会看到相同的代码 view py from project app models import MyModel 因此 如果我将应用
  • Windows服务之间如何通信

    我有 2 个使用 C 创建的 Windows 服务 我希望其中一个服务调用第二个 Windows 服务中的函数 我该怎么做呢 EDIT 问题是我必须运行该应用程序 我不需要它们 相反服务进程也很好 但我need这2个应用程序进行通信 这2个
  • 获取 $http 调用的完整调用堆栈跟踪

    假设有人在名为的文件中编写了这样的方法app js尝试对不存在的 url 执行 XHR 请求 app controller MainCtrl function scope http scope send function http get
  • 如何从 Android 中的 Fragment 调用 ArrayAdapter 构造函数

    我正在尝试将两列 ListView 添加到我的 Android 应用程序中 当我创建项目时 我选择了选项 片段 它通过向左和向右滑动来创建漂亮的导航 所以我的MainActivity延伸FragmentActivity 我的问题是 当我尝试
  • 找不到绳线(-bash:绳线:找不到命令)

    我正在尝试使用 twine 在 pypi 上发布我的第一个 python 包 当然会首先添加 test pypi 我遵循了官方指南https packaging python org tutorials packaging projects
  • Freemarker:从模板文件 (*.ftl) 调用静态 util 方法

    在 Freemarker FTL 文件中 我想调用StringUtils capatilize myString 例如 p You selected selectionString p p StringUtils capatilize se
  • 绘制圆形渐变

    我想绘制一个圆形渐变 如下图所示 我可以轻松管理径向渐变 但我不知道如何做圆形渐变 我正在考虑在一条线上绘制渐变 然后将其转换为圆形 这可能吗 这就是我绘制径向渐变的方法 CGFloat a MIN self frame size widt
  • 使用 codeigniter 403 的 Ajax 请求(禁止)

    我正在尝试使用 Ajax 向 Codeigniter 中的控制器文件发送一个值 但没有成功 我已经搜索过这个问题 现在这个问题在这里被提出了很多次 但仍然找不到解决方案 希望任何人都可以帮助我 谢谢 Js file function sub
  • 在堆栈上为 execve 创建一个 arg 数组

    我想编写一个汇编程序 通过 EXECVE 系统调用 0x3C 使用开关 al 执行程序 bin ls 手册页 man 2 execve 指出该调用需要三个值 int execve const char filename char const
  • 通过 http 拉取大型存储库(大小超过 1GB)失败

    存储库的大小超过 1GB 当我拉到 50 时 出现错误 gt remote Counting objects 23891 done remote Compressing objects gt 100 19980 19980 done fat
  • 如何仅在 log4j 中记录警告

    在 Struts 2 应用程序中 我们使用 log4j 进行日志记录 我只想记录警告 但是当我尝试在 log4j properties 中使用时 log4j rootLogger warn stdout 它也打印错误和致命日志 我只想要警告
  • 如何在 Visual Basic .NET 中从 Internet“读取”XML?

    因此 我正在 Visual Basic 2010 中创建一个程序 它将处理来自 Internet 的大约 120 万个 XML 文件 每个文件的 URL 格式如下 website com xmlfeed action number VARI
  • 从 Android Wear 上的日历获取数据

    我正在查询这样的日历数据 Constructor of the class mCursor context getContentResolver query CalendarContract Events CONTENT URI mColu
  • Axios 未传递 Content-Type 标头

    我在后端运行一个 Odoo 实例 并创建了一个公开 Web 控制器的自定义模块 如下所示 网页控制器 coding utf 8 from odoo import http import odoo from odoo http import
  • Linux/Unix 中是否有与 futex 等效的东西?

    我正在寻找可以用来做的东西polling like select kqueue epoll即不忙轮询 在 C C 中 换句话说 我需要阻塞一个线程 然后在另一个线程中唤醒它尽可能少的开销 A mutex condition variable
  • iOS Playground 中的 NSUserDefaults

    iOS Playgrounds 似乎有一个奇怪的问题NSUserDefaults总是返回nil而不是实际值 在 iOS Playground 中 最后一行错误地返回nil import UIKit let defaults NSUserDe
  • 如何升级现有的 Flutter 应用?

    我有一个半年前构建的现有 Flutter 应用程序 我查了一下pubspec lock 它有这一行 sdks dart gt 2 10 0 110 lt 2 11 0 flutter gt 1 16 0 lt 2 0 0 所以我假设该应用程
  • sql server中事务回滚的机制是什么?

    sql server中事务回滚的机制是什么 数据库中的每个更新都会首先将一个条目写入包含更改描述的日志中 例如 如果您将列值从 A 更新到 B 日志将包含更新记录 类似于 在表 T 中 列 C 已从 A 更改为 B 以通过 id I 的事务
  • 获取ArrayList中重复项的数量

    例如 假设我有一个ArrayList可能包含以下值 x x x y y 现在我想要检索的是x and x我希望能够区分我所拥有的x or y因为实际上 我可以在 ArrayList 中拥有任何对象 并且我必须能够区分它们 我想做的是首先转换
  • 操作 struct tm 中的 tm_mon?

    我无法理解这个程序 即tm mon 1 part 我是 C 语言新手 通常我总是编写自己的小程序来应对我在遵循的课程书中设置的任何挑战 但我不得不咨询其他人来解决这个问题 它是课本和他们的代码 所以不是我的 我不明白为什么 1被添加到tm