c++sleep函数怎么使用
时间: 2024-10-23 18:18:30 浏览: 13
在 C++ 中,`sleep` 函数是用来让当前线程暂停执行一段时间,直到指定的时间单位过去。这个函数通常包含在 `<cstdlib>` 或 `<unistd.h>` 头文件中,具体取决于你的系统。基本的用法如下:
```cpp
#include <cstdlib> // 如果是在 Posix 系统(如 Linux)
#include <unistd.h> // 或者
#include <chrono> // 使用 C++11 的时间库来获取精确的延迟
// 使用秒作为单位
void sleep_for_seconds(int seconds) {
::sleep(seconds); // 对于 Posix 系统
// std::this_thread::sleep_for(std::chrono::seconds(seconds)); // 对于 C++11 及以上版本
}
// 使用毫秒作为单位
void sleep_for_milliseconds(int milliseconds) {
// Posix 系统没有直接提供 ms 单位的 sleep,需要计算
int seconds = milliseconds / 1000;
int remainder_ms = milliseconds % 1000;
::sleep(seconds);
if (remainder_ms > 0) {
// 用 nanoseconds 补足剩余时间
::usleep(remainder_ms * 1000);
}
// 或者使用 C++11:
// std::this_thread::sleep_for(std::chrono::milliseconds(milliseconds));
}
```
阅读全文