C语言实现简单的定时器

 更新时间:2020年10月29日 12:54:59   作者:研究猿小刘  
这篇文章主要为大家详细介绍了C语言实现简单的定时器,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了C语言实现简单的定时器的具体代码,供大家参考,具体内容如下

1.代码分析

2.代码

#include <stdio.h>
#include <time.h>
#include <conio.h>

#ifndef CLOCKS_PER_SEC
#define CLOCKS_PER_SEC 1000
#endif

int main( void )
{
 clock_t start;
 long count = 1;
 start = clock();
 while(1)
 {
 if((clock() - start) == CLOCKS_PER_SEC)
 {
 printf("%ld\n",count++);
 start = clock();
 //break;
 }
 }
 getch();
}

3. 代码抽象出一个定时器函数 void timer(long time)

void timer(long time){

 clock_t start;
 long count = 1;
 start = clock();
 while(1)
 {
 if((clock() - start) != (time*CLOCKS_PER_SEC))
 {
 //时间没有到,啥也不做,空循环
 }else {
   //时间到了退出循环
   // printf("%s","hello");
   break;
  }
  
 }
}

完整代码

#include <stdio.h>
#include <time.h>
#include <conio.h>

#ifndef CLOCKS_PER_SEC
#define CLOCKS_PER_SEC 1000
#endif
/**
 * time 的单位为s
 */
void timer(long time){

 clock_t start;
 long count = 1;
 start = clock();
 while(1)
 {
 if((clock() - start) != (time*CLOCKS_PER_SEC))
 {
 //时间没有到,啥也不做,空循环
 }else {
   //时间到了退出循环
   // printf("%s","hello");
   break;
  }
  
 }
}
int main( void )
{
 
 for(int i=0;i<10;i++){
  timer(1);
  printf("%d\n",i);
 }
 getch();
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 对C语言中递归算法的深入解析

    对C语言中递归算法的深入解析

    C通过运行时堆栈支持递归函数的实现。递归函数就是直接或间接调用自身的函数
    2013-07-07
  • C++ 数据结构完全二叉树的判断

    C++ 数据结构完全二叉树的判断

    这篇文章主要介绍了C++ 数据结构完全二叉树的判断的相关资料,需要的朋友可以参考下
    2017-06-06
  • 深入了解c++数组与指针

    深入了解c++数组与指针

    这篇文章主要介绍了c++数组与指针的相关资料,帮助大家更好的理解和学习c++,感兴趣的朋友可以了解下
    2020-08-08
  • zlib库压缩和解压字符串STL string的实例详解

    zlib库压缩和解压字符串STL string的实例详解

    这篇文章主要介绍了zlib库压缩和解压字符串STL string的实例详解的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
    2017-10-10
  • C++面向对象之多态的实现和应用详解

    C++面向对象之多态的实现和应用详解

    相信大家都知道面向对象的三大特性是封装,继承和多态,下面这篇文章主要给大家介绍了关于C++面向对象之多态的实现和应用的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-09-09
  • C语言根据协议分割获取字符串单元的实现代码

    C语言根据协议分割获取字符串单元的实现代码

    今天小编就为大家分享一篇关于C语言根据协议分割获取字符串单元的实现代码,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • 关于C++的强制类型转换浅析

    关于C++的强制类型转换浅析

    C++的强制类型转换是我们在日常开发中经常会遇到的,下面这篇文章主要给大家介绍了关于C++强制类型转换的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2017-09-09
  • C++中的std::async()详解

    C++中的std::async()详解

    这篇文章主要给大家介绍了关于C++中std::async()的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • ubuntu系统下C++调用matlab程序的方法详解

    ubuntu系统下C++调用matlab程序的方法详解

    学习c++与matlab混合编程一般是通过c++调用matlab函数,因为matlab具有强大的数学函数库,然而vc++具有界面设计灵活的优点,下面这篇文章主要给大家介绍了关于在ubuntu系统下C++调用matlab程序的方法,需要的朋友可以参考下。
    2017-08-08
  • solaris操作系统做c应用程序开发步骤

    solaris操作系统做c应用程序开发步骤

    solaris操作系统做c应用程序开发步骤,大家参考使用吧
    2013-12-12

最新评论