c++ - C++中执行时间显示 : cin/scanf/getchar_unlocked()

标签 c++ execution-time

我正在做一个项目来证明 std::cinscanf 接受输入慢,而 scanf 又比通过使用 getchar/getchar_unlocked() 等自写函数。

我想记录并打印每种情况下的执行时间,但我不知道如何应用时间和计时等头文件。
我将从 stdin 读取大量输入值,并希望在每种情况下显示执行时间。

请用一个简短的例子告诉我如何处理时间。

最佳答案

怎么样

auto start = std::chrono::high_resolution_clock::now();

some_long_running_operation();

auto end = std::chrono::high_resolution_clock::now();

std::cout << "Operation took " <<
    std::chrono::duration_cast<std::chrono::microseconds>(end - start).count() <<
    " microseconds\n";

(或多或少逐字记录 from this reference 及其子页面。更具体地说,来自 std::chrono::time_point 引用的第二个示例,只是更改了使用的时钟。)

这段代码的作用是从高分辨率时钟中获取当前时间作为开始时间,进行要计时的操作,然后获取结束时间。然后以微秒为单位显示差异。

关于c++ - C++中执行时间显示 : cin/scanf/getchar_unlocked(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22089091/

相关文章:

c++ - 在 cpp 文件中设置静态枚举变量的正确方法

python - Spark 执行时间与 AWS EMR 上的节点数量

针对极慢查询的 MySQL 查询优化

java - JUnit:测试计算速度

c++ - 我在 SFML sf::RenderWindow 中只有黑屏

c++ - 对可变参数模板多继承函数调用的访问不明确

c++ - 有没有办法使用 boost 线程库将线程亲和性设置为处理器内核?

c++ - 另一个与设计相关的 C++ 问题

c - 不同的执行时间还是相同的不同选项?

php - 如何增加php的最大执行时间