草庐IT

TIME_FORMAT

全部标签

c++ - 我怎样才能告诉 clang-format 遵循这个约定?

我想要这个:if(!enabled){return;}转向这个:if(!enabled){return;}(换句话说,我想在一行中使用简短的if语句,但在它们周围保留{})目前我正在使用以下配置:AllowShortIfStatementsOnASingleLine:trueAllowShortLoopsOnASingleLine:trueAllowShortCaseLabelsOnASingleLine:trueAllowShortFunctionsOnASingleLine:trueAllowShortBlocksOnASingleLine:trueBreakBeforeBrace

c++ - std::chrono:将自定义持续时间添加到 time_point

以下代码可以编译(g++4.7.2):#includetypedefstd::chrono::durationdouble_prec_seconds;typedefstd::chrono::time_pointtimepoint_t;voiddo_something(consttimepoint_t&tm){//...}intmain(intargc,char**argv){timepoint_tt0=std::chrono::system_clock::now();timepoint_tt1=t0+std::chrono::seconds(3);//timepoint_tt3=t0+

c++ - gdb 错误不是可执行格式 : File format not recognized

我正在尝试在Ubuntu16.04上调试一个简单的“helloworld”C++程序,但gdb无法识别可执行文件格式。但是,我能够在命令行上成功运行可执行文件。这是代码#includeusingnamespacestd;intmain(){cout我使用命令编译程序文件TestProject.cppg++-gTestProject.cpp-ohello然后要调试,我给出命令gdb./hello我收到以下错误信息GNUgdb(Ubuntu7.11.1-0ubuntu1~16.5)7.11.1Copyright(C)2016FreeSoftwareFoundation,Inc.Licens

C++ time_t问题

我在使用C++(VS2008)进行日期管理时遇到了问题。根据MSDNspecifications,time_t代表:自1970年1月1日0:00UTC以来的秒数因此,我写了这段代码:#include#includetime_tGetDate(intyear,intmonth,intday,inthour,intmin,intsec){time_trawtime;structtm*timeinfo;time(&rawtime);timeinfo=gmtime(&rawtime);timeinfo->tm_year=year-1900;timeinfo->tm_mon=month-1;ti

c++ - 将日期和时间数字转换为 time_t 并指定时区

我有以下整数:inty,mon,d,h,min,s;它们的值为:2012、06、27、12、47,53分别。如果我在我的应用程序中的其他地方选择了“UTC”,我想表示“2012/06/2712:47:53UTC”的日期时间,或者如果我选择了“2012/06/2712:47:53AEST”在我的应用程序的其他地方选择了“AEST”。我想将其转换为time_t,这是我目前使用的代码:structtmtimeinfo;timeinfo.tm_year=year-1900;timeinfo.tm_mon=mon-1;timeinfo.tm_mday=day;timeinfo.tm_hour=h

c++ - 如何将分数纪元时间戳( double )转换为 std::chrono::time_point?

我有一个小数纪元时间戳,表示为double,我想将其转换为适当的std::chrono::time_point。纪元是自1/1/1970以来的常用UNIX纪元。我知道存在std::chrono::system_clock::from_time_t,但是time_t没有小数部分。使用C++11方法执行此操作的最佳方法是什么?这个问题与unixtimestamptoboost::posix_time::ptime有关,除了它要求的是C++11而不是它的Boost版本。 最佳答案 假设纪元与已知的时钟类型相同,您可以使用具有double表

c++ - C/C++ : Inherent ambiguity of "\xNNN" format in literal strings

考虑这两个字符串:wchar_t*x=L"xy\x588xla";wchar_t*y=L"xy\x588bla";阅读本文后,您会认为两个字符串文字除了一个字符外是相同的-'x'而不是'b'。事实证明并非如此。第一个字符串编译为:y={'x','y',0x588,'x','l','a'}第二个实际上是:x={'x','y',0x588b,'l','a'}它们的长度甚至都不一样!是的,'b'被十六进制表示('\xNNN')字符吃掉了。至少,这可能会导致手写字符串的困惑和细微的错误(您可能会争辩说unicode字符串不属于代码主体)但更严重的问题,也是我面临的问题,是自动生成的代码。似乎没

c++ - 将 steady_clock::time_point 转换为 time_t

我正在使用steady_clock来保存一些消息的时间戳。出于调试目的,拥有日历(或类似的东西)很有用。对于其他时钟,有静态函数to_time_t,但在GCC(MinGW4.8.0)上,此函数不存在。现在我打印类似的东西:Timestamp:26735259098242对于时间戳,我需要一个steady_clock,所以我不能使用system_clock或其他。编辑之前的打印是从time_since_epoch().count()给出的 最佳答案 假设您需要内部计算的稳定行为,而不是显示,这里有一个函数可用于转换为time_t以供显

c++ - time() 返回的 time_t 是否特定于区域?

我刚接触并对time_t有疑问和time().我阅读了如下记录的函数time():time_ttime(time_t*timer);GetcurrenttimeGetthecurrentcalendartimeasatime_tobject.Thefunctionreturnsthisvalue,andiftheargumentisnotanullpointer,thevalueisalsosettotheobjectpointedbytimer.文档没有讨论时区。因此,对于以下C++代码:time_tt=time(NULL);如果两台机器,一台在美国,一台在英国,都执行函数调用tim

c++ - 带有可变模板参数的 boost::format

假设我有一个类似printf的函数(用于日志记录)利用完美转发:templatevoidawesome_printf(std::stringconst&fmt,Arguments&&...args){boost::formatf(fmt);f%/*Howtospecify`args`here?*/;BlackBoxLogFunction(boost::str(f).c_str());}(我没有编译这个但我的实际功能遵循这个指南)如何将可变参数“展开”到boost::format变量f中? 最佳答案 只是总结void.pointer'