如何在C++中编写一个实现倒计时功能的程序?
时间: 2024-12-29 22:34:03 浏览: 15
在C++中,你可以通过标准库`chrono`模块来编写一个简单的倒计时程序。以下是一个基本的例子:
```cpp
#include <iostream>
#include <chrono> // 引入chrono模块
#include <thread> // 引入线程支持
// 定义倒计时函数
void countdown(int seconds) {
std::cout << "倒计时开始...\n";
auto end = std::chrono::high_resolution_clock::now() + std::chrono::seconds(seconds); // 设置结束时间
while (std::chrono::high_resolution_clock::now() < end) {
std::chrono::duration<double> remaining = end - std::chrono::high_resolution_clock::now(); // 计算剩余时间
std::cout << "秒数: " << std::chrono::duration_cast<std::chrono::seconds>(remaining).count() << "\r"; // 打印进度
std::this_thread::sleep_for(std::chrono::seconds(1)); // 暂停1秒
}
std::cout << "\n倒计时结束!\n";
}
int main() {
int seconds_to_countdown;
std::cout << "请输入倒计时秒数: ";
std::cin >> seconds_to_countdown;
std::thread count_thread(countdown, seconds_to_countdown);
count_thread.join(); // 等待计时器线程完成
return 0;
}
```
在这个例子中,用户输入倒计时的秒数,然后创建一个新的线程运行倒计时函数。`std::this_thread::sleep_for`用于暂停当前线程直到计时结束。
阅读全文