C++延时程序

cpp 复制代码
#include<iostream>
#include <ctime>
using namespace std;

void sleep(int time) {
    clock_t head = clock();
        while (clock() - head <= time) {
            cout << "last: "<<head<<endl;
            cout << "current:"<<clock()<<endl;
            cout<< "current - last:"<<clock() - head<<endl;
         }

    }

int main () {
    cout << "无稚" << endl;
    sleep(1000);
    cout << "wuzhi" << endl;
    return 0;
}

上述代码是一个简单的示例,主要展示了一个 sleep 函数,该函数用于模拟程序暂停一段时间。

代码中的 sleep 函数的参数 time 表示程序要睡眠的时间(以毫秒为单位)。函数内部使用了 clock 函数来获取当前的CPU时间,进行延时操作。

具体解释如下:

  1. 引入了 <iostream><ctime> 头文件,以便使用标准输入输出和时间相关函数。

  2. 定义了一个名为 sleep 的函数,该函数接受一个 time 参数,用于指定程序要休眠的时间。

  3. sleep 函数内部,首先使用 clock 函数获取当前的 CPU 时间,将其赋值给 head 变量,作为起始时间。

  4. 使用一个循环,循环条件为 clock() - head <= time,即当前时间减去起始时间小于等于指定的时间。这样就实现了程序暂停指定的时间。

  5. 在循环内部,使用 cout 输出了起始时间、当前时间和当前时间减去起始时间的差值,以观察程序的运行状态。

  6. 在主函数 main 中,首先输出了字符串 "无稚",然后调用了 sleep(1000),休眠1秒钟。

  7. 最后,输出了字符串 "wuzhi",程序执行完毕并返回。

该代码示例主要用于展示如何使用循环和 clock 函数来进行简单的时间控制,以及使用 cout 输出相关信息。它并不是实现真正的睡眠功能,因为 clock 函数获取的是 CPU 时间,不会导致线程或进程的真正休眠。要实现真正的睡眠功能,可以使用适当的跨平台库或操作系统提供的相关函数。

相关推荐
许长安2 分钟前
gRPC Keepalive 机制
c++·经验分享·笔记·rpc
吃好睡好便好7 分钟前
在Matlab中绘制抛物三维曲面图
开发语言·人工智能·学习·算法·matlab·信息可视化
tyung15 分钟前
用 Go 实现一个生产级 Ring Buffer Queue:环形数组、位运算取模、批量操作全拆解
数据结构·go
伯远医学15 分钟前
Nat. Methods | 邻近标记技术:活细胞中捕捉分子互作的新利器
java·开发语言·前端·javascript·人工智能·算法·eclipse
wangjialelele27 分钟前
Linux SystemV 消息队列 + 责任链模式:实现客户端消息处理流水线
linux·服务器·c语言·网络·c++·责任链模式
刘永鑫Adam34 分钟前
Nature Microbiology | 基于TRACS算法的跨多界宏基因组数据菌株水平溯源推演
算法
小O的算法实验室37 分钟前
2026年SEVC,面向无人机辅助边缘计算的自适应群体智能算法,深度解析+性能实测
算法·边缘计算·智能算法·智能算法改进
高锰酸钾_42 分钟前
计算机网络-网络层-路由算法与路由协议
计算机网络·算法·智能路由器
智者知已应修善业1 小时前
51单片机4按键控制共阳LED霓虹灯切换1整体闪烁2流水下3流水上4间隔闪烁】2023-10-27
c++·经验分享·笔记·算法·51单片机
洛水水1 小时前
结构性设计模式详解
c++·设计模式