永发信息网

在STM32的RTC程序中, tm->tm_mday = day + 1; 这个日期为什么要加一呢

答案:1  悬赏:70  手机版
解决时间 2021-03-27 23:30
在STM32的RTC程序中, tm->tm_mday = day + 1; 这个日期为什么要加一呢
最佳答案
struct tm是直观意义上的时间表示方法:
struct tm {

  int tm_sec;

  int tm_min;

  int tm_hour;

  int tm_mday;

  int tm_mon;

  int tm_year;

  int tm_wday;

  int tm_yday;

  int tm_isdst;

  long int tm_gmtoff;

  const char *tm_zone;

  };
程序举例  #include

  #include

  int main(void)

  {

  struct tm *ptr;

  time_t lt;

  lt =time(NULL);

  ptr=localtime(<);

  printf("second:%d\n",ptr->tm_sec);

  printf("minute:%d\n",ptr->tm_min);

  printf("hour:%d\n",ptr->tm_hour);

  printf("mday:%d\n",ptr->tm_mday);

  printf("month:%d\n",ptr->tm_mon+1);

  printf("year:%d\n",ptr->tm_year+1900);

  return 0;

  }
tim 是一个时间计数,是从1900年0分0秒到现在的时间。所以转化从我们日常用的表示一般年要加上1900,月要加上1,而你这里for (i = 1; day >= days_in_month(i); i++) 表示月的i是从1开始的,tm_mon不是从0开始,所以day也要+1. 因为日常表示中没有0月0号,只有1月1号
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
机械图纸中标的R10是什么意思.这个R10有具体
Nike耐克官方AIR MAX90ULTRA2.0ESSENTIAL复古
请问有400字吗?
骑字的意思是什么
姬无夜对红莲有没有感情.虽然姬无夜只是个龙
第1行解析错误:..."a","pid":666,"src":"/
TXcad2006与AUTOCAD2006能搭配使用?
谁和涛姐见过面,谈一下感受
#河南海一舒适家实业有限公司#这公司我就好奇
生命的形态有几种?是什么?
如图怎么由传递函数直接写出系统的可控标准型
氧气跟臭氧哪个更稳定
我的驱动已更新,以前的老驱动能否删除?
回迁房好不好 和商品房有什么差别
微信下午四点提现100什么时候才能到账
推荐资讯
have a great time是doing sth还是to do sth
昌黎离大成多远
香港蓝汇金业现货用数据坑人,别上当。难道没
激光整平机真的好用吗,有什么样的优点
晋城矿务局和晋城凤鸣小区各有一套房子,请问
恋恋秀场1站
卢浮宫欧式·现代家居照明体验馆地址在哪,我
有没有by sth的结构
我是1966年2月出生 有人说我是天河水命 有人
如何从八字命理推算人生运势
IPO企业董秘需做什么
4月6号gx8857号航班在几号航站楼
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?