Avatar ·

如何在C++中实现几毫秒的延迟(sleep)?

你好!我正在Linux下编写一个简单的C++程序,需要暂停几毫秒。我是新手,目前只知道 `` 中的 `sleep()` 函数,但它似乎只能以秒为单位工作。我需要类似“等待500毫秒”的功能。 以下是我的代码示例,当然无法编译,因为我不知道正确的函数: ```cpp #include #include // 这里有 sleep() int main() { std::cout << "开始..." << std::endl; sleep(500); // 错误!sleep 等待500秒,而不是毫秒 std::cout << "过去了500毫秒?" << std::endl; return 0; } ``` 我使用的是Linux(Ubuntu),用g++编译。我尝试过搜索,但找到了很多不同的选项:`usleep`、`nanosleep`、`std::this_thread::sleep_for`——我搞混了。对于C++来说,哪种方法正确且现代?最好代码是可移植的(不仅限于Linux,如果可能的话也适用于Windows)。提前感谢!