在我的编程生涯中,我一直在用VB.NET编程.我有一个C++项目提供给我,我需要做一些修改,我感到绝望的迷失和困惑.
它是C++中的Visual Studio 2008 MFC项目.
已定义输出变量:
char szout[900];
Run Code Online (Sandbox Code Playgroud)
下面这一行用于在输出之前将值附加到输出变量:
strcpy(szout, "TextHere")
Run Code Online (Sandbox Code Playgroud)
因此,我尝试过的搜索中的众多示例之一就是包含在顶部:
#include <windows.h>
Run Code Online (Sandbox Code Playgroud)
然后为我的代码:
SYSTEMTIME st;
GetSystemTime(&st);
char myDate[20] = st;
CT2CA outputDate(myDate);
strcat(szout, outputDate);
Run Code Online (Sandbox Code Playgroud)
由于某种原因,附加在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'
Run Code Online (Sandbox Code Playgroud)
所以我会澄清,我是一个完整的新手,并会感谢任何和所有的帮助.
谢谢,
Cha*_*had 24
如果您使用的是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");
Run Code Online (Sandbox Code Playgroud)
在 MFC 中,以下代码用于 MMDDYYYY 格式的当前日期。
CTime t = CTime::GetCurrentTime();
CString s = t.Format("%m%d%Y");
Run Code Online (Sandbox Code Playgroud)