C ++ MFC Получить текущую дату и время - PullRequest
9 голосов
/ 02 августа 2011

Я программировал в VB.NET большую часть моей самой карьеры программиста.Мне предоставлен проект C ++, в который мне нужно внести несколько изменений, и я чувствую себя безнадежно растерянным и растерянным.

Это проект Visual Studio 2008 MFC в C ++.

была определена выходная переменная:

char szout[900];

Эта строка ниже используется для добавления значений к выходной переменной перед выводом:

strcpy(szout, "TextHere")

Итак, один измногие примеры из поиска, которые я пробовал, должны были включать в верхней части:

#include <windows.h>

А затем для моего кода:

SYSTEMTIME st;
GetSystemTime(&st);
char myDate[20] = st;
CT2CA outputDate(myDate);
strcat(szout, outputDate);

Для некоторыхпричина, по которой переменные, добавленные к szout, должны быть типа CT2CA, что я не совсем уверен, что это тоже.

Но тогда я получаю следующие ошибки во второй и третьей строке (char myDate ...и т. д.) и (вывод CT2CA .... и т. д.)

error C2440: 'initializing' : cannot convert from 'SYSTEMTIME' to 'char [20]'

error C2664: 'ATL::CW2AEX<>::CW2AEX(LPCWSTR) throw(...)' : cannot convert parameter 1 from 'char [20]' to 'LPCWSTR'

Итак, поясню, я новичок в этом деле, и был бы признателен любому ивсем помочь.

Спасибо,

Ответы [ 2 ]

24 голосов
/ 02 августа 2011

Если вы используете MFC, почему бы и нет:

// uses printf() format specifications for time
CString t = CTime::GetCurrentTime().Format("%H:%M");

// Or, if you have OLE Support
CString t = COleDateTime::GetCurrentTime().Format("%H:%M");
4 голосов
/ 17 февраля 2015

В MFC следующий код предназначен для текущей даты в формате MMDDYYYY.

CTime t = CTime::GetCurrentTime();
CString s = t.Format("%m%d%Y");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...