草庐IT

c++ - 检测内存泄漏的工具

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭8年前。Improvethisquestion内存泄漏检测工具(如purify和valgrind)如何工作?我如何设计和实现我自己的此类工具?

c++ - unix 时间戳到 boost::posix_time::ptime

我需要将自纪元以来的秒数转换为ptime。我很确定一定有一种简单的方法可以做到这一点,但我找不到任何东西。谢谢。编辑:原来的时间戳是float。我无法更改它,也不想失去亚秒级精度。 最佳答案 使用from_time_t()转换功能。time_t是UNIX时间戳,即自纪元以来的秒数。 关于c++-unix时间戳到boost::posix_time::ptime,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.c

c++ - 在 Unix 上使用 C++ 的正则表达式

我熟悉Regex本身,但每当我尝试查找任何示例或文档以在Unix计算机上使用Regex时,我只会得到有关如何编写Regex或如何使用适用于Windows的.NET特定库的教程。我已经搜索了一段时间,但找不到任何关于Unix机器上C++正则表达式的好教程。我正在尝试做的事情:通过分解字符串然后读取不同的子组,使用正则表达式解析字符串。做一个PHP类比,类似于返回所有$匹配的preg_match。 最佳答案 考虑使用Boost.Regex.一个例子(来自网站):boolvalidate_card_format(conststd::str

c++ - 我们可以在 Unix 编译器中使用 wmain() 还是它只能在 Windows 上运行?

我们可以在Unix编译器上使用wmain()函数吗?还是它只能在Windows上工作? 最佳答案 main的唯一标准签名是:intmain(void);intmain(intargc,char*argv[]);但是,独立的实现可以提供扩展/允许其他签名。但这些并不能保证是便携的。wmain看起来像Windows/VS的东西。这在*nix/GNUGCC上工作的机会不大。 关于c++-我们可以在Unix编译器中使用wmain()还是它只能在Windows上运行?,我们在StackOverfl

c++ - POSIX/UNIX : How to reliably close a file descriptor

问题:在以EINTR或EIO失败的close()系统调用之后,不确定文件是否已关闭。(http://pubs.opengroup.org/onlinepubs/9699919799/)在多线程应用中,重试关闭可能会关闭其他线程打开的不相关文件。不重试关闭可能会导致无法使用的打开文件描述符堆积起来。一个干净的解决方案可能涉及在新关闭的文件描述符上调用fstat()和一个相当复杂的锁定机制。此外,使用单个互斥锁序列化所有打开/关闭/接受/...调用可能是一种选择。这些解决方案没有考虑到库函数可能会以不可控的方式自行打开和关闭文件,例如,std::thread::hardware_concu

c++ - 如何在终端上以星号(*)的形式显示输入密码

我想写一个简单的C程序来验证密码,例如密码是否等于1234那么我想打印欢迎否则再试一次。但是问题如下:我想以*(star)的形式显示输入密码。例如..如果用户输入1234它将显示为****以避免其他人看到输入的密码。谁能告诉我如何使用C或C++实现它。平台:UNIX 最佳答案 不幸的是,这个问题的解决方案是特定于平台的。在Linux或BSD上,您可以使用readpassphrase函数(还有getpass,尽管它不允许调用者提供缓冲区和缓冲区大小。GNULibC的文档(链接断开?试试thisalternative)库也提供了一个很好

c++ - 关闭功能未被识别 - C++

我在名为RaftLog.cc的文件中有以下代码片段:#include#include#includenamespaceLogCabin{namespaceServer{namespaceRaftConsensusInternal{namespaceFilesystemUtil=Storage::FilesystemUtil;namespace{boolfileToProto(conststd::string&path,google::protobuf::Message&out){intfd=open(path.c_str(),O_RDONLY);if(fd==-1)returnfals

c++ - 在同一 DLL 的实例之间共享静态和全局变量

首先,有一些与此类似的问题,但没有一个真正解决确切的问题:https://social.msdn.microsoft.com/forums/vstudio/en-US/b7701ee5-c9fa-4693-8ae1-d59736360514/question-about-static-variables-in-dllhttp://cboard.cprogramming.com/cplusplus-programming/101543-global-static-variable-class-delivered-dll.html所以,这是我的问题:我正在开发一个VST插件,并且我有一个在

Windows程序员,安装到C :\Windows?是个好习惯吗

我主要在Linux上开发,其中有/usr/bin和/bin目录。我知道,除了C:\Windows和C:\Windows\System32之外,Windows没有任何真正的等价物。许多我移植到Windows的命令行程序,我只是编写一个安装程序将它们复制到C:\Windows,因为我不想设置PATH变量。我知道正确的方法是设置一个PATH变量,但对我来说C:\Windows==到/usr/bin。Windows程序员对此有何看法?这是一个好习惯吗?有什么真正的缺点吗?我真的应该安装到ProgramsFiles并通过注册表设置路径变量吗? 最佳答案

windows - 如何将文本从 Windows 中的 Firefox 复制到 Unix 中的 bash shell?

我在Windows的网页上有一个很长的URL,我需要将其复制到Unix的bashshell中。有没有一种方法可以在不重新输入URL的情况下执行此操作? 最佳答案 如果您使用putty连接到unix,请从浏览器复制文本,然后右键单击putty窗口进行粘贴。 关于windows-如何将文本从Windows中的Firefox复制到Unix中的bashshell?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co