显示日期早于当前格式90天(ANSI C)
有没有一种简单的方法可以比现在提前90天计算?例如,如果今天是5月31日,那么提前90天的日期是什么?是否有这样做的功能?谢谢没有任何功能,没有 但你可以很容易地做到这一点:显示日期早于当前格式90天(ANSI C),c,mfc,ansi,C,Mfc,Ansi,有没有一种简单的方法可以比现在提前90天计算?例如,如果今天是5月31日,那么提前90天的日期是什么?是否有这样做的功能?谢谢没有任何功能,没有 但你可以很容易地做到这一点: 使用获取当前时间 减去90天的秒数 使用转换为本地时间 如果需要,使用转换为字符串 不是单一功能,不是 但你可以很容易地做到这一点: 使用获取当前时间 减去90天的秒数 使用转换为本地时间 如果需要,使用转换为字符串 DateTime dt=DateTime.Now.AddDays(-90) 字符串edate=dt.T
- 使用获取当前时间
- 减去90天的秒数
- 使用转换为本地时间
- 如果需要,使用转换为字符串
- 使用获取当前时间
- 减去90天的秒数
- 使用转换为本地时间
- 如果需要,使用转换为字符串
- 不是单一功能,不是
但你可以很容易地做到这一点:
DateTime dt=DateTime.Now.AddDays(-90)
字符串edate=dt.ToString(“dd-MM-yyy”) DateTime dt=DateTime.Now.AddDays(-90) 字符串edate=dt.ToString(“dd-MM-yyy”)
#包括
#包括
#包括
内部主(空){
time_t=time(0);//现在
struct-tm[1];
memmove(tm,localtime(&t),sizeof tm);//转换为struct tm
tm->tm_mday-=90;//减去90天
time\u t then2=mktime(tm);//转换为time\u t并进行规格化
printf(“%s\n”,ctime(&then2));
返回0;
}
#包括
#包括
#包括
内部主(空){
time_t=time(0);//现在
struct-tm[1];
memmove(tm,localtime(&t),sizeof tm);//转换为struct tm
tm->tm_mday-=90;//减去90天
time\u t then2=mktime(tm);//转换为time\u t并进行规格化
printf(“%s\n”,ctime(&then2));
返回0;
}
可以使用COleDateTime
和COleDateTimeSpan
类
#include <atlcomtime.h>
COleDateTime dt = COleDateTime::GetCurrentTime();
COleDateTimeSpan span(90, 0, 0, 0);
COleDateTime dt2 = dt - span;
#包括
COleDateTime dt=COleDateTime::GetCurrentTime();
COleDateTimeSpan(90,0,0,0);
COleDateTime dt2=dt-span;
可以使用COleDateTime
和COleDateTimeSpan
类
#include <atlcomtime.h>
COleDateTime dt = COleDateTime::GetCurrentTime();
COleDateTimeSpan span(90, 0, 0, 0);
COleDateTime dt2 = dt - span;
#包括
COleDateTime dt=COleDateTime::GetCurrentTime();
COleDateTimeSpan(90,0,0,0);
COleDateTime dt2=dt-span;
首先,您需要决定如何表示日期。您提到了ANSI C和MFC的一种有点邪恶的混合。是哪一个?据我所知,MFC是一个C++库,MS编译器甚至不支持ANSI C。首先,您需要决定如何表示日期。您提到了ANSI C和MFC的一种有点邪恶的混合。是哪一个?据我所知,MFC是C++库,MS编译器甚至不支持ANSI C+1。这是我将使用的方法,而不是将现在的日期/时间设置为中午,只打印日期(以避免DST问题)。“怀疑行动”已经调查了这种程度的担忧。虽然此代码对tm_isdst
字段的非调整可能会解决这一问题,+1这是我将使用的方法,而不是将现在的日期/时间设置为中午,并仅打印日期(以避免DST问题)。“怀疑行动”已经调查了这种程度的担忧。尽管此代码对tm_isdst
字段的非调整可能会解决此问题,