Дата и время в C++

Часы из жесткого диска
Мне известно два способа получения системной даты и времени в C++.

Способ первый: функции _strdate и _strtime

Самый простой способ получить текущую дату и время — это воспользоваться функциями _strdate и _strtime. Описаны они в файле time.h.
Следует отметить, что этот способ будет работать как в Windows, так и в Linux.
Пример:
#include <stdio.h>
#include <time.h>

void main( )
{
char dateStr [9];
char timeStr [9];
_strdate( dateStr);
printf( "Текущая дата: %s \n", dateStr);
_strtime( timeStr );
printf( "Текущее время: %s \n", timeStr);
}

Способ второй: SYSTEMTIME

В windows.h есть структура SYSTEMTIME, которая может быть использована для представления времени и даты по элементам (год, месяц, день, час, и т.д.). Вот эта структура:
typedef struct _SYSTEMTIME {
WORD wYear;
WORD wMonth;
WORD wDayOfWeek;
WORD wDay;
WORD wHour;
WORD wMinute;
WORD wSecond;
WORD wMilliseconds;
} SYSTEMTIME;

Заполняет эту структуру функция GetSystemTime (). Замечу, что этот способ работает только в Windows, поэтому его не стоит использовать при написании кроссплатформенных приложений.
Пример:
#include <Windows.h>
#include <stdio.h>

void main()
{
SYSTEMTIME st;
GetSystemTime(&st);
printf("Год:%d\nМесяц:%d\nДень:%d\nЧас:%d\nМинута:%d\nСекунда:% d\n" ,st.wYear,st.wMonth,st.wDay,st.wHour,st.wMinute,st.wSecond);
}

Какой именно способ использовать — решать Вам.

Поблагодарить автора

2 Responses to Дата и время в C++

  1. Прям то, что доктор прописал !!! Огромное спасибо !!!

Оставить комментарий

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>