是否有一种简单的方法比现在提前90天计算?例如,如果今天是5月31日,那么90天前的日期是什么时候?有这样的功能吗?感谢
答案 0 :(得分:4)
#include <stdio.h>
#include <string.h>
#include <time.h>
int main(void) {
time_t t = time(0); // NOW
struct tm tm[1];
memmove(tm, localtime(&t), sizeof tm); // convert to struct tm
tm->tm_mday -= 90; // subtract 90 days
time_t then2 = mktime(tm); // convert to time_t and normalize
printf("%s\n", ctime(&then2));
return 0;
}
答案 1 :(得分:2)
可以使用COleDateTime
(link)和COleDateTimeSpan
(link)类。
#include <atlcomtime.h>
COleDateTime dt = COleDateTime::GetCurrentTime();
COleDateTimeSpan span(90, 0, 0, 0);
COleDateTime dt2 = dt - span;
答案 2 :(得分:0)
答案 3 :(得分:-2)
DateTime dt = DateTime.Now.AddDays(-90);
string edate = dt.ToString(“dd-MM-yyyy”);