草庐IT

unix_date

全部标签

macOS跨进程通信: Unix Domain Socket 创建实例

macOS跨进程通信:UnixDomainSocket创建实例一:简介Socket是网络传输的抽象概念。一般我们常用的有TcpSocket和UDPScoket,和类Unix系统(包括Mac)独有的UnixDomainSocket(UDX)。TcpSocket能够跨电脑进行通信,即使是在同一个电脑下的多进程间通信,也会通过网卡进行数据传输,如果本地网卡的环回网络被禁用,则会导致通信失败。UnixDomainSocket,使用的是Liunx系统中万物皆文件的概念,和有名管道的操作差不多,都是在文本创建一个特有的文件,用来在两个进程间通信,两个进程分别写入和读取文件流中的数据,达到传输的目的。和Tc

c++ - boost Date_Time 日期解析不起作用

我正在尝试使用boost1.55Date_Time库编写代码来解析日期时间字符串。但它总是产生非日期时间日期。boost::gregorian::dated(2005,6,25);boost::gregorian::dated2;boost::gregorian::date_facet*facet(newboost::gregorian::date_facet("%Y%m%d"));stringstreamss;ss.imbue(std::locale(std::cout.getloc(),facet));ss>d2;//not-a-date-timecout我尝试了不同的格式说明符,

c++ - 现在我可以替换所有 Date 类吗?

我有一个很大的旧C++项目。它至少有三个日期和时间结构。它们看起来像:structDate{intday;intmonth;intyear;};structTime{inthour;intmin;intsecond;};其中一些使用double,用于Time::second,其中一些具有“优化”并使用short用于Time::(min,hour)和Date::(month,天).那么现在有了新的C++11标准(并且可能会得到boost)是否有可能用每个人都使用的东西代替它们?我看过std::chrono,但不知道如何使用它。例如,为了说明我这里想要的测试用例:我有一个函数,我为这个函数

c++ - 获取 boost::gregorian::date 的整数表示

来自关于boost::gregorian::date类的boost文档here:"Internallyboost::gregorian::dateisstoredasa32bitintegertype"现在这将是一个很好的、紧凑的方式,比如说,将这个日期存储在一个文件中。但是文档没有指定从对象中提取它的任何方法。问题是:有没有办法获得这个整数表示,以便稍后构造同一类的另一个相等的对象? 最佳答案 day_number()成员函数返回这个。boost::gregorian::dated(2014,10,18);uint32_tnumb

java~Date和LocalDateTime及Instant的使用场景

在Java中,LocalDateTime、Date和Instant分别代表了不同的日期时间类型,它们之间有一些区别和适用场景。Date:java.util.Date是Java早期的日期时间类,它包含了日期和时间信息,但是在设计上存在一些问题,因此并不推荐在新的代码中使用。Date类存在线程安全性问题,同时它的年份是从1900年开始计算,月份是从0开始计算,这种设计容易引起错误。在Java8之后,推荐使用新的日期时间API代替Date类。LocalDateTime:LocalDateTime是Java8引入的日期时间类,它表示了一个不带时区的日期时间,例如2024-02-21T14:30:00。

c++ - CMake 无法找到对应于 "Unix Makefiles"的构建程序

这个问题在这里已经有了答案:CMAKE_MAKE_PROGRAMnotfound(16个答案)关闭4年前。全新的编码。我已经安装了CLion,并计划开始使用C++进行编码。我还安装了Cygwin。我已经研究了大约一个小时的编译器如何工作以及如何使用它,但是当我在Clion上选择编译器时,我得到了错误“CMake错误:CMake无法找到对应于“UnixMakefiles”的构建程序。未设置CMAKE_MAKE_PROGRAM。您可能需要选择其他构建工具。”“CMake错误:CMAKE_C_COMPILER未设置,在EnableLanguage之后”和“CMake错误:未设置CMAKE_C

c++ - 如何根据 RFC 3339 格式化 boost::date_time-object

我想在boost中使用date_time库来表示我的应用程序中的时间。此应用程序将生成Atom提要,后者又会以RFC3339中指定的格式强制要求时间戳。,例如“1990-12-31T23:59:60Z”或“1990-12-31T15:59:60-08:00”。那么,我该如何根据这个RFC格式化时间呢?我一直在阅读DateTimeInput/Outputdocumentation一整天,我似乎无法找到如何在需要时将Z放在最后。此外,RFC支持可选的小数秒,但只有一位数字(例如“1990-12-31T23:59:60.5Z”)(*)。我似乎也不知道该怎么做。我总是可以编写自己的格式化例程来

c++ - 如何启用 _USE_UNIX98 (Gcc/C++ v2.96)

我有一个在实际编译器中运行的C++应用程序(我用eclipse编译它)。现在,我需要在Redhat7.3上使用Kdevelop在非常旧的编译器版本(gcc/c++v2.96)上编译它。当我编译应用程序时,出现以下错误:swprintfundeclared。它包含wchar.hheader,但我在RH7.3操作系统中看到了此文件,并且仅在声明了__USE_UNIX98__USE_ISOC99时才声明此函数。如何启用__USE_UNIX98? 最佳答案 GNUlibc使用特殊的系统头文件定义了应该在其所有头文件中启用的功能.如果您定义适

c++ - 当使用静态成员将共享库静态链接到可执行文件时,我在 UNIX 和 WIN 上收到不同的结果。请解释为什么?

请考虑以下代码和平://1.Singleheaderfile.Imaginethatitissomestaticlibrary.//Counter.h#pragmaoncestructCounter{Counter(){++getCount();}staticint&getCount(){staticintcounter=0;returncounter;}};//2.Sharedlibrary(!)://main_DLL.cpp#include#include"counter.h"extern"C"{__declspec(dllexport)//forWINvoidmain_DLL()

c++ - 使用 Boost.Date_Time 解析带时区的日期时间?

我想使用BoostDateTimeIO解析带时区的日期时间图书馆。#include#include#includeusingnamespaceboost::gregorian;usingnamespaceboost::posix_time;std::chrono::system_clock::time_pointParseDate(conststd::wstring&dateText,constwchar_t*constformat){ptimetime;std::wstringstreambuffer(dateText);buffer.imbue(std::locale(std::l