草庐IT

c++ - 仅使用 C++ 中的标准库获取以毫秒为单位的当前日期和时间

我正在尝试打印这样的时间戳。2018-05-24T20:16:07.339271我不想使用Boost或任何第三方库。我只想使用标准库。我使用的是Clang6,因此我应该能够在必要时使用C++17。我开始查看chrono并得到了类似的东西。autonow=std::chrono::high_resolution_clock::now();但是,我不确定如何从上面获取我想要的日期时间格式。 最佳答案 我猜你最好的选择是使用std::localtime+std::put_time 关于c++-

c++ - 毫秒 mpi 错误 : unable to allocate launching block

我使用msmpi在VS2015中创建了简单的控制台程序。#include#include#includeintmain(intargc,char**argv){intrank=0,size=0;MPI_Init(&argc,&argv);/*startsMPI*/MPI_Comm_rank(MPI_COMM_WORLD,&rank);/*getcurrentprocessid*/MPI_Comm_size(MPI_COMM_WORLD,&size);if(rank==0){charhelloStr[]="HelloWorld";//MPI_Send(helloStr,_countof(

c++ - 如何在 C 中实现 RFC 3393(Ipdv 数据包延迟变化)?

我正在构建一个以太网应用程序,我将从一侧发送数据包并在另一侧接收数据包。我想像RFC3393中那样计算接收方数据包的延迟。所以我必须在发送方的数据包中放置一个时间戳,然后在接收方收到数据包后立即获取时间戳。减去这些值我将得到时间戳的差异,然后用后续差异减去这个值我将得到单向ipdv延迟。两个时钟不同步。所以非常感谢任何帮助。谢谢。 最佳答案 RFC3393用于测量数据包延迟的方差,而不是用于测量延迟本身。举个例子:您正在编写一个视频流应用程序。您希望缓冲尽可能少的视频数据(以便视频尽快开始播放)。假设数据总是总是总是从机器A到机器B

c++ - 如何暂停一个程序几毫秒?

如何使用C++托管代码将程序暂停几毫秒?我试过Sleep()但当我包含winbase.h文件时它不起作用,我遇到了很多编译错误!for(inti=0;iMakeCurrent();System::Threading::Thread::Sleep(100);theta_rotated+=2.0*3.141592653/(double)Model->size()/10.0;simpleOpenGlControl1->Invalidate();}private:System::VoidsimpleOpenGlControl1_Paint(System::Object^sender,Syste

c++ - 为什么 std::shuffle 和 std::sort 一样慢(甚至慢)?

考虑测量执行时间和执行交换次数的简单代码:#include#include#include#include#includestructA{A(inti=0):i(i){}inti;staticintnSwaps;friendvoidswap(A&l,A&r){++nSwaps;std::swap(l.i,r.i);}booloperatorv(10000000);std::minstd_randgen(std::random_device{}());std::generate(v.begin(),v.end(),[&gen](){returngen();});autos=high_re

c++ - 如何将 std::chrono::high_resolution_clock::now() 转换为毫秒、微秒...?

我从Howtogetduration,asintmilli'sandfloatsecondsfrom?得到了这段代码#include#includeintmain(intargc,char*argv[]){autot0=std::chrono::high_resolution_clock::now();autot1=std::chrono::high_resolution_clock::now();std::chrono::durationfs=t1-t0;std::chrono::millisecondsd=std::chrono::duration_cast(fs);std::co

c++ - QTimer 与 Windows 8 的奇怪准确性

我在Windows8.1中使用Qt5.2.1。我在Windows8.1上遇到了关于QTimer准确性的奇怪行为。我正在启动一个定时器,它应该每20毫秒超时一次。为了检查这一点,我还使用QTime对象来测量两个滴答之间耗时。如果我以20毫秒的间隔启动定时器,我测量到30毫秒的有效间隔。如果我以19ms的间隔启动计时器,我测量到19ms的有效间隔!这是一个产生问题的小项目:main.cpp:#include"mainfrm.h"#includeintmain(intargc,char*argv[]){QApplicationa(argc,argv);MainFrmw(20);w.setMi

C++ 日期和时间,带毫秒

要求我需要在Windows上使用C++11检索日期和时间,包括毫秒。如果可能,早于1970年开始。我还需要能够从日期/时间变量中提取年、月、日、小时、秒和毫秒。我尝试过的time()只返回秒。clock()不返回日期,仅返回自上次系统启动以来的时间。不过,很适合测量耗时。注意:它只适用于Windows。不需要Linux。 最佳答案 如果你使用的是c++11,你应该使用chrono这使您可以更轻松地管理时间。它为您提供了一些方法来以您想要的任何单位(秒到毫秒,...)“转换”您的时间,并且还可以管理ctime变量。

C++,计时器,毫秒

#include#include#includeusingnamespacestd;doublediffclock(clock_tclock1,clock_tclock2){doublediffticks=clock1-clock2;doublediffms=(diffticks)/(CLOCKS_PER_SEC/1000);returndiffms;}intmain(){clock_tstart=clock();for(inti=0;;i++){if(i==10000)break;}clock_tend=clock();cout所以我的问题是它返回了我0,说实话我想检查我的程序运行了

c++ - C++ 中的实际毫秒数

是否有可能获得实际的毫秒数,因为我不知道在C++程序中,如Java中的System.currentTimeMillis()?我知道time(),但我认为它不足以准确测量短时间,对吗? 最佳答案 它现在是语言标准的一部分(现在已经有几年了):查看LiveOnColiru#include#includeintmain(){usingnamespacestd::chrono;autoepoch=high_resolution_clock::from_time_t(0);//...autonow=high_resolution_clock: