不要程序暂停,要另一个程序进行中进行10秒计时
时间: 2024-04-09 17:28:29 浏览: 105
明白了,你希望编写一个程序来进行10秒计时,而不是让程序暂停。以下是一个示例代码:
```cpp
#include <iostream>
#include <thread>
void timer() {
std::cout << "开始计时..." << std::endl;
for (int i = 1; i <= 10; ++i) {
std::cout << i << " 秒" << std::endl;
std::this_thread::sleep_for(std::chrono::seconds(1));
}
std::cout << "计时结束!" << std::endl;
}
int main() {
std::thread t(timer); // 创建一个线程来执行计时函数
t.join(); // 等待线程执行完毕
return 0;
}
```
这段代码使用了 `<iostream>` 来进行输入输出操作,`<thread>` 来进行线程相关的操作。我们定义了一个名为 `timer` 的函数,用于进行计时。在 `timer` 函数中,我们使用一个循环来输出当前的秒数,并使用 `std::this_thread::sleep_for` 函数来让程序暂停 1 秒钟。主函数 `main` 中,我们创建了一个线程 `t` 来执行计时函数,并使用 `t.join()` 来等待线程执行完毕。
你可以将以上代码复制到一个文件(例如 `timer.cpp`),然后使用以下命令在 Ubuntu 上编译和运行它:
```
g++ -std=c++11 timer.cpp -o timer -pthread
./timer
```
这将编译代码并生成一个名为 `timer` 的可执行文件。运行 `./timer` 命令后,你将会看到 "开始计时...",然后每秒输出当前的秒数,最后输出 "计时结束!"。整个过程持续约 10 秒钟。
阅读全文