linux的查询时间实现秒定时+gettimeofday()函数的用法
2016-04-19 22:28
591 查看
最近闲来没事,考虑到自己以后的发展,还是学学linux系统比较好,从最基础的linux shell的命令,vim,gcc,makefile学起,但是学到后面感觉学不进去了,所以去图书后借了基本书,打算找些小项目做,有个项目是这样的:查询时间实现秒定时。
<span style="font-size:18px;">1 #include <stdio.h>
2 #include <sys/time.h>
3 #include <unistd.h>
4 #include <time.h>
5 int main(void)
6 {
7 struct timeval timenow,timeold;
8 struct timezone timez;
9 time_t timetemp;
10 gettimeofday(&timeold,&timez);
11 while(1)
12 {
13 while(1)
14 {
15 gettimeofday(&timenow,&timez);
16 if((timenow.tv_sec-timeold.tv_sec)==1)
17 {
18 timeold=timenow;
19 break;
20 }
21 }
22 time(&timetemp);
23 printf("%s",ctime(&timetemp));
24 }
25 return 0;
26 }</span>
书上的不对,我调试了半天没调试出来,还好手机下载了一个linux手册软件,看了一下,原来少了两个头文件,分别是 #include <unistd.h>, #include <time.h>。
对gettimeofday()函数也有了了解:gettimeofday()会把目前的时间用tv 结构体返回,当地时区的信息则放到tz所指的结构中,一般情况下只需要返回目前的时间就行。
<span style="font-size:18px;">1 #include <stdio.h>
2 #include <sys/time.h>
3 #include <unistd.h>
4 #include <time.h>
5 int main(void)
6 {
7 struct timeval timenow,timeold;
8 struct timezone timez;
9 time_t timetemp;
10 gettimeofday(&timeold,&timez);
11 while(1)
12 {
13 while(1)
14 {
15 gettimeofday(&timenow,&timez);
16 if((timenow.tv_sec-timeold.tv_sec)==1)
17 {
18 timeold=timenow;
19 break;
20 }
21 }
22 time(&timetemp);
23 printf("%s",ctime(&timetemp));
24 }
25 return 0;
26 }</span>
书上的不对,我调试了半天没调试出来,还好手机下载了一个linux手册软件,看了一下,原来少了两个头文件,分别是 #include <unistd.h>, #include <time.h>。
对gettimeofday()函数也有了了解:gettimeofday()会把目前的时间用tv 结构体返回,当地时区的信息则放到tz所指的结构中,一般情况下只需要返回目前的时间就行。
相关文章推荐
- Linux socket 初步
- Linux Kernel 4.0 RC5 发布!
- linux lsof详解
- linux 文件权限
- Linux 执行数学运算
- 10 篇对初学者和专家都有用的 Linux 命令教程
- Linux 与 Windows 对UNICODE 的处理方式
- Ubuntu12.04下QQ完美走起啊!走起啊!有木有啊!
- 解決Linux下Android开发真机调试设备不被识别问题
- 运维入门
- 运维提升
- Linux 自检和 SystemTap
- Ubuntu Linux使用体验
- c语言实现hashmap(转载)
- Linux 信号signal处理机制
- linux下mysql添加用户
- Scientific Linux 5.5 图形安装教程
- Linux 下无损图片压缩小工具介绍