用c++写一个秒表程序,误差小于1s
时间: 2023-12-06 18:02:31 浏览: 29
以下是一个简单的 C++ 秒表程序,它可以在命令行界面上显示以毫秒为单位的计时器读数,并且误差应该小于1s。
```c++
#include <iostream>
#include <chrono>
#include <thread>
int main() {
std::chrono::milliseconds elapsed_time(0);
auto start_time = std::chrono::high_resolution_clock::now();
while (true) {
auto end_time = std::chrono::high_resolution_clock::now();
elapsed_time += std::chrono::duration_cast<std::chrono::milliseconds>(end_time - start_time);
start_time = end_time;
std::cout << "Elapsed time: " << elapsed_time.count() << "ms\n";
std::this_thread::sleep_for(std::chrono::milliseconds(500));
}
return 0;
}
```
该程序使用 `std::chrono` 库来进行时间测量和计算。它在一个循环中运行,每次循环都会更新已经流逝的时间,并打印出当前的计时器读数。程序使用 `std::this_thread::sleep_for` 函数来暂停执行一段时间,以确保计时器读数不会变得太快。
请注意,计时器的精度取决于系统时钟的精度。在大多数现代计算机上,系统时钟的精度通常是几十毫秒或更好,因此误差应该小于1秒。