21xrx.com
2025-07-16 02:01:03 Wednesday
登录
文章检索 我的文章 写文章
C++如何实现等待几秒钟?
2023-07-05 01:14:22 深夜i     40     0
C++ 等待 几秒钟

在C++语言中,我们通常使用 usleep() 函数或者 sleep() 函数来实现等待几秒钟的功能。

usleep() 函数用于将进程挂起一段时间,单位是微秒,其函数原型为:

#include <unistd.h>
int usleep(useconds_t us);

其中,us 表示需要挂起的时间,单位为微秒,即 10 的负六次方秒。例如,如果需要等待 1 秒钟,可以调用 usleep(1000000) 函数。该函数的返回值为 0,表示正常返回,否则表示出错。

下面是一个使用 usleep() 函数实现等待几秒钟的例子:

#include <iostream>
#include <unistd.h>
using namespace std;
int main() {
  cout << "等待 3 秒钟..." << endl;
  usleep(3000000); // 挂起 3s
  cout << "等待结束!" << endl;
  return 0;
}

sleep() 函数用于将进程挂起一段时间,单位是秒,其函数原型为:

#include <unistd.h>
unsigned int sleep(unsigned int seconds);

其中,seconds 表示需要挂起的时间,单位为秒。例如,如果需要等待 1 秒钟,可以调用 sleep(1) 函数。该函数的返回值为 0,表示正常返回,否则表示出错。

下面是一个使用 sleep() 函数实现等待几秒钟的例子:

#include <iostream>
#include <unistd.h>
using namespace std;
int main() {
  cout << "等待 5 秒钟..." << endl;
  sleep(5); // 挂起 5s
  cout << "等待结束!" << endl;
  return 0;
}

总的来说,使用 usleep() 函数和 sleep() 函数的区别在于单位不同,前者为微秒,后者为秒。根据实际情况选择合适的函数即可。同时需要注意的是,在使用 sleep() 函数时,如果被信号中断后,可能会导致挂起的时间不足,因此需要考虑异常处理等问题。

  
  

评论区