C ++ Дни между датой и сегодняшней датойC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 C ++ Дни между датой и сегодняшней датой

Сообщение Anonymous »

У меня есть функция, называемая int difenceedates indayays (string & date) < /code>.
Эта функция должна получить строковое значение как дату (Yyyy-mm-dd) и сравнить ее с датой сегодня. /p>

Я не знаю, есть ли уже что -то внутри STL, я не смог найти подходящий алгоритм. Я только что узнал, что у Boost есть решение для этого, но я не хочу использовать Boost.

int differenceDatesInDays(string& date) {
string year = date.substr(0, 4);
string month = date.substr(5,2);
string day = date.substr(8, string::npos);

int y = stoi(year);
int m = stoi(month);
int d = stoi(day);

time_t time_now = time(0);
tm* now = localtime(&time_now);

int diffY = y - (now->tm_year + 1900);
int diffM = m - (now->tm_mon + 1);
int diffD = d - (now->tm_mday);

int difference = (diffY * 365) + (diffM * 30) + diffD;

return difference;
}
< /code>

Я не знаю, как выяснить, имеет ли месяц 30, 31 или 28 дней.

Подробнее здесь: https://stackoverflow.com/questions/337 ... 2%b4s-date
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»