C++:将 %n 与 strftime 一起使用
C++: Using %n with strftime
我正在 C++
使用 VS2010
开发应用程序。我尝试将格式 "%d-%m-%y %n %H:%M:%S"
与 strfime
一起使用,但出现运行时错误提示 Debug assert Failed: “Invalid format directive”
。在尝试解决该问题时,我发现 %n
是 C++11
的一部分并且不受 VS2010
支持。所以我的问题是:有没有其他方法可以让我在两条不同的行中获得日期和时间?我没有选择使用其他版本的 VS。
编辑:
实际上我正在使用库 wxfreechart
创建图表。日期和时间显示在 X 轴中。在 wxfreechart
中,我有函数 SetDateFormat()
接受 date format in strftime style
(http://wxcode.sourceforge.net/docs/freechart/classDateAxis.html)。我的代码实际上如下:
bottomAxis->SetDateFormat(wxT("%d-%m-%y %n %H:%M:%S"));
\n
而不是 %n
这里什么也没有。
抱歉我在 strftime
上犯了错误。
当然,尝试打印格式化字符串 "%d-%m-%y \n %H:%M:%S"
,从而将 "%n"
替换为 "\n"
。这样它应该在旧的 C++ 标准中工作,因此在 VS2010 中。
否则你或许可以考虑升级到更新版本的 visual studio。
这是一个很好的参考:http://www.cplusplus.com/reference/ctime/strftime/
问题不在于 strftime
,而在于我对 wxfreechart
的使用。我必须将 verticallabeltext
设置为 false
然后我可以像 strftime
.
一样使用 \n
bottomAxis->SetVerticalLabelText(false);
bottomAxis->SetDateFormat(wxT("%d-%m-%y\n%H:%M:%S"));
我正在 C++
使用 VS2010
开发应用程序。我尝试将格式 "%d-%m-%y %n %H:%M:%S"
与 strfime
一起使用,但出现运行时错误提示 Debug assert Failed: “Invalid format directive”
。在尝试解决该问题时,我发现 %n
是 C++11
的一部分并且不受 VS2010
支持。所以我的问题是:有没有其他方法可以让我在两条不同的行中获得日期和时间?我没有选择使用其他版本的 VS。
编辑:
实际上我正在使用库 wxfreechart
创建图表。日期和时间显示在 X 轴中。在 wxfreechart
中,我有函数 SetDateFormat()
接受 date format in strftime style
(http://wxcode.sourceforge.net/docs/freechart/classDateAxis.html)。我的代码实际上如下:
bottomAxis->SetDateFormat(wxT("%d-%m-%y %n %H:%M:%S"));
\n
而不是 %n
这里什么也没有。
抱歉我在 strftime
上犯了错误。
当然,尝试打印格式化字符串 "%d-%m-%y \n %H:%M:%S"
,从而将 "%n"
替换为 "\n"
。这样它应该在旧的 C++ 标准中工作,因此在 VS2010 中。
否则你或许可以考虑升级到更新版本的 visual studio。
这是一个很好的参考:http://www.cplusplus.com/reference/ctime/strftime/
问题不在于 strftime
,而在于我对 wxfreechart
的使用。我必须将 verticallabeltext
设置为 false
然后我可以像 strftime
.
\n
bottomAxis->SetVerticalLabelText(false);
bottomAxis->SetDateFormat(wxT("%d-%m-%y\n%H:%M:%S"));