c语言设置周期的程序,C语言通过timeval结构设置周期
在C语言中,我们经常需要设置一个时间周期。在这里,我们通过Timeval结构实现时间周期的设置。首先,我们介绍timeval,其定义如下(转载http://www.cnblogs.com/wainiwann/archive/2012/11/28/2792133.html):
"timeval是一个结构体,在time.h中定义为:
struct timeval
{
__time_t tv_sec; /* Seconds. */
__suseconds_t tv_usec; /* Microseconds. */
};
其中,tv_sec为Epoch(1970-1-1零点零分)到创建struct timeval时的秒数,tv_usec为微秒数,即秒后面的零头。"
Ok, 接下来我们通过如下代码实现周期设置:
-------------------------------------------------------------------------------------------------------------------------------------------
#include
#include
#include
int main()
{
int time_interval=3; // Set period to be 3s
printf("Testing start:\n");
while(1){
setPeriod(time_interval);
//You can add a method here to realize what you want to do in this period.
}
return 0;
}
void setPeriod(int time_interval){
static struct timeval tv1;
struct timeval tv2;
int time_in_us;
static int flag = 1;
gettimeofday(&tv2,NULL);
if(flag){
tv1.tv_sec = tv2.tv_sec;
tv1.tv_usec = tv2.tv_usec;
flag = 0;
return;
}
time_in_us = (tv2.tv_sec - tv1.tv_sec) * 1000000 + tv2.tv_usec - tv1.tv_usec;
if(time_in_us >= time_interval * 1000000) {
tv1.tv_sec = tv2.tv_sec;
tv1.tv_usec = tv2.tv_usec;
// You can add a method here to make statistic about the data you get in this peorid.
printf("Hello, world\n");
}
}
---------------------------------------------------------------------------------------------------------------------------------------------
以上代码实现一个周期为3s的设置,执行结果为: 每隔三秒print一个“Hello world”.
注意,要实现每隔三秒print一个“Hello world”, sleep(3000) 会是一个更简便的方法。但是,用sleep方法,那么在该周期三秒内,只能sleep, 不能实现其他动作。
欢迎大家指正!
时间: 12-20
c语言设置周期的程序,C语言通过timeval结构设置周期相关推荐
- c语言编程 生理周期的程序,C语言程序设计100例之(9):生理周期
例9 生理周期 问题描述 人生来就有三个生理周期,分别为体力.感情和智力周期,它们的周期长度为 23 天.28 天和33 天.每一个周期中有一天是高峰.在高峰这天,人会在相应的方面表现出色.例如 ...
- c语言经典解决实际程序,C语言经典教程1讲.ppt
<C语言经典教程1讲.ppt>由会员分享,可在线阅读,更多相关<C语言经典教程1讲.ppt(48页珍藏版)>请在人人文库网上搜索. 1.C程序设计,主讲人:任祖华,2,本课程学 ...
- c语言查询日期应用程序,C语言时间操作
UNIX操作系统根据计算机产生的年代和应用采用1970年1月1日作为UNIX的纪元时间,1970年1月1日0点作为计算机表示时间的是中间点,将从1970年1月1日开始经过的秒数用一个整数存放,这种高效 ...
- c语言课程设计加密程序,C语言课程设计文件加密解密.doc
C语言课程设计文件加密解密 C语言程序设计 课程设计 学 院 计算机工程 班 级 计算1313 姓 名 学 号 201321121089 成 绩 指导老师 2014年6月26日 计算1313班C语言程 ...
- python是语言还是软件_程序开发语言之Python:是追逐还是坚守?
Python作为计算机程序设计语言的其中一种,最初是被设计用于编写自动化脚本(shell),随着版本的不断更新.语言新功能的添加和机器学习的兴起,Python从2017年开始受到广泛关注. Pytho ...
- 用c语言做一个五子棋程序,C语言制作简单五子棋游戏
原标题:C语言制作简单五子棋游戏 C语言制作简单的五子棋游戏 学习C语言的人很多,但是用C语言很少,而用来为自己所用,来做游戏的人就更少了,很多人都是跟着学校学习,学校讲到哪就坐到哪,但是以后却还是不 ...
- c语言怎么返回前一个程序,c语言return返回到哪
c语言return返回到哪 c语言return,返回给了上一级,比如一个递归程序,从第三层返回到第二层:又比如一个普通的子程序,那就返回到主程序中去. 主程序中return返回给了操作系统. 比如下面 ...
- c语言随机抽取小程序_C语言整人小程序,慎用,谨记!
整人啦!!! 哈喽~ 今天有位朋友留言问有没有比较有趣的C语言小程序? 想了想,给你写几个整人的小程序吧,有趣又好玩... 这里一共给你们准备了三个,分别起名为关机.死机.抖动,都给出了代码,整人指数 ...
- c语言指针地址交换程序,C语言-基础教程-指针的地址分配
我们可以定义指针变量指向任何类型的变量.在上述的处理过程中,指针变量指向的变量通过传递变量的地址来实现.指针变量的取值是内存的地址,这个地址应当是安全的,不可以是随意的,否则,写入内存单元的值将会使得 ...
最新文章
- iOS UTI(统一类型标识)
- 陈松松:刚入门的视频营销新人,需要做哪些准备?
- 操作系统(五)CPU调度
- html中绑定一个字段,四、在html中绑定数据
- 分布式系统原理 之5 日志技术
- 初识ABP vNext(4):vue用户登录菜单权限
- CCKS 2018 | 最佳论文:南京大学提出 DSKG,将多层 RNN 用于知识图谱补全
- QT高级编程之QT基本概览
- MyBatisPlus学习
- pandas.DataFrame及xgboost代码示例
- RawData是Bayer转RGB格式代码分析和NEON单元加速方法
- mysql 处理转义'_mysql转义处理
- JS(fullpage)的使用
- VS2010的aspx文件中的html代码的格式化整理的方法
- Shodan搜索引擎使用技巧
- dx绘制2d图像_在DirectX 中进行2D渲染
- 【自然语言处理(NLP)】基于ERNIE语言模型的文本语义匹配
- 搜索趋势:微软必应新版集成AI和实时搜索
- kotlin android 4,Kotlin Android Extensions: 与 findViewById 说再见 (KAD 04)
- 在“互联网+”时代下,专为餐饮行业量身打造的智能管理系统!