相关疑难解决方法(0)

定时器功能使用C++以纳秒为单位提供时间

我希望计算API返回值所花费的时间.这种行动所花费的时间是纳秒秒.由于API是C++类/函数,我使用timer.h来计算相同的:

  #include <ctime>
  #include <cstdio>

  using namespace std;

  int main(int argc, char** argv) {

      clock_t start;
      double diff;
      start = clock();
      diff = ( std::clock() - start ) / (double)CLOCKS_PER_SEC;
      cout<<"printf: "<< diff <<'\n';

      return 0;
  }
Run Code Online (Sandbox Code Playgroud)

上面的代码给出了以秒为单位的时间.如何在毫秒秒内获得相同的精度?

c c++ timer

101
推荐指数
8
解决办法
20万
查看次数

关于C++ 11中<chrono>头的几个问题

我<chrono>在C++ 11中有几个关于新标题的问题.使用Windows 7,Visual Studio 2012.

查看示例http://en.cppreference.com/w/cpp/chrono

#include <iostream>
#include <chrono>
#include <ctime>

int fibonacci(int n)
{
    if (n < 3) return 1;
    return fibonacci(n-1) + fibonacci(n-2);
}

int main()
{
    std::chrono::time_point<std::chrono::system_clock> start, end;
    start = std::chrono::system_clock::now();
    int result = fibonacci(42);
    end = std::chrono::system_clock::now();

    int elapsed_seconds = std::chrono::duration_cast<std::chrono::seconds>
                             (end-start).count();
    std::time_t end_time = std::chrono::system_clock::to_time_t(end);

    std::cout << "finished computation at " << std::ctime(&end_time)
              << "elapsed time: " << elapsed_seconds << "s\n";
}
Run Code Online (Sandbox Code Playgroud)

可能的输出

finished computation at Sat Jun 16 20:42:57 …
Run Code Online (Sandbox Code Playgroud)

c++ stl c++11 c++-chrono

10
推荐指数
1
解决办法
8464
查看次数

标签 统计

c++ ×2

c ×1

c++-chrono ×1

c++11 ×1

stl ×1

timer ×1