学了忘,忘了还得学,简单记录下
1. time_t time(time_t *tloc);
time函数返回从1970年1月1日0点以来的秒数.存储在time_t结构之中
把 这个printf("%ld",time(0)) 保存编译
加到watch -n 1 后面,看看效果
2.int gettimeofday(struct timeval *tv, struct timezone *tz);
头文件:#include <sys/time.h>
其中涉及结构体定义如下
struct timeval {
time_t tv_sec; /* seconds */
suseconds_t tv_usec; /* microseconds */
};
tz一般可以为NULL,时间结果保存在timeval结构体中,例子:
#include <stdio.h>
#include <sys/time.h>
int main(int argc,char **argv){
struct timeval tv;
gettimeofday(&tv,NULL);
printf("%ld\n",(&tv)->tv_sec);
printf("%ld\n",(&tv)->tv_usec);
}
使用 watch -n 1 查看结果
涉及的宏定义:
#define timerisset(tvp)\
((tvp)->tv_sec || (tvp)->tv_usec)
#define timercmp(tvp, uvp, cmp)\
((tvp)->tv_sec cmp (uvp)->tv_sec ||\
(tvp)->tv_sec == (uvp)->tv_sec &&\
(tvp)->tv_usec cmp (uvp)->tv_usec)
#define timerclear(tvp)\
((tvp)->tv_sec = (tvp)->tv_usec = 0)
3. struct tm*gmtime(const time_t*timep);
头文件:#include <time.h>
涉及结构体:
struct tm
{
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
};
int tm_sec 代表目前秒数,正常范围为0-59,但允许至61秒
int tm_min 代表目前分数,范围0-59
int tm_hour 从午夜算起的时数,范围为0-23
int tm_mday 目前月份的日数,范围01-31
int tm_mon 代表目前月份,从一月算起,范围从0-11
int tm_year 从1900 年算起至今的年数
int tm_wday 一星期的日数,从星期一算起,范围为0-6
int tm_yday 从今年1月1日算起至今的天数,范围为0-365
int tm_isdst 日光节约时间的旗标
此函数返回的时间日期未经时区转换,而是UTC时间。
例子:
#include <time.h>
#include <stdio.h>
int main(int argc,char **argv){
struct tm *tm;
time_t now=time(NULL);
tm=gmtime(&now);
printf("%d\n",tm->tm_year);
printf("%d\n",tm->tm_mon);
printf("%d\n",tm->tm_mday);
}
分享到:
相关推荐
在本文中,我们将探讨如何使用GTK 2开发一款针对Linux操作系统的备忘录程序。GTK+2是一种广泛使用的开源图形用户界面构建工具包,尤其在GNOME桌面环境中得到广泛应用。由于Linux平台上缺少类似Windows的便捷提醒软件...
6. **脚本编程**:掌握Bash shell的基础知识,编写简单的shell脚本,熟悉条件判断、循环结构以及函数的使用。 7. **系统监控**:理解系统资源的查看,如内存(`free`)、CPU(`top`)、磁盘空间(`df`)等,以及...
Linux备忘手册分享 在IT领域,Linux是一个广泛使用的开源操作系统,它以其稳定性和灵活性而备受推崇。Linux系统是基于Unix的设计理念,适用于服务器、桌面环境以及嵌入式设备等多种平台。本备忘手册旨在帮助用户更...
7. **shell脚本编程**:`bash`是默认的Linux shell,学习编写简单的shell脚本可以帮助自动化日常任务,例如`for`循环、条件语句、函数等。 8. **系统信息和日志**:`uname`, `whoami`, `date`, `free`, `df`, `...
《程序员Linux备忘手册》是一份专为程序员设计的实用指南,旨在帮助开发者在Linux环境中高效工作。这个压缩包“linux-memo-master.zip”包含了丰富的Linux相关知识,涵盖了从基础命令到高级操作的各个方面,是程序员...
为了满足不同用户的需求,个人备忘录系统应考虑跨平台兼容性,如Windows、MacOS和Linux等。这可能需要采用如Java或Python等跨平台开发语言,或者利用跨平台框架如 Electron 进行开发。 总结来说,个人备忘录系统的...
Linux作为一款功能强大且广泛使用的操作系统,其命令行界面提供了丰富的工具和指令,用于系统管理、软件开发、网络配置等多方面的工作。然而,面对众多的命令,初学者往往会觉得难以记忆和掌握。为此,创建个人的...
Shell,特别是Linux或Unix系统的Bash Shell,是命令行界面的交互式解释器,用户可以通过它来执行系统命令、编写脚本。Shell脚本是一种强大的工具,可以自动化重复性的任务,提高工作效率。例如,在“MEMO-main”这个...
用于提高内核启动效率,减少不必要的计算和初始化时间。 6. **访问内核参数的接口**: 提供了一种方式让内核模块获取或设置内核启动时的参数。 7. **内核初始化选项**: 通过配置文件调整内核编译时的特性,如...
- 修改`private void revertToNitz()`方法,使其在没有自动时间设置的情况下不再尝试使用NITZ协议,而是使用SNTP客户端获取时间。 - 需要在方法中增加对`SntpClient`类的实例化及调用其`startService`方法,以实现...
【描述】提到“羽枫云备忘”能够实现跨平台的备忘功能,涵盖了手机(Symbian)、Windows和Linux。这暗示了该应用采用了多平台兼容的技术,可能包括跨平台编程框架,如Qt或Java ME,或者是利用Web服务来同步数据,...
linux内核调试分析指南 linux内核调试分析指南--上篇 本文档已经转到下面的网址,位于zh-kernel.org的文档停止更新,请访问新网址 一些前言 作者前言 知识从哪里来 为什么撰写本文档 为什么需要汇编级调试 ...私人备忘
在Linux程序开发基础中,理解进程状态、文件处理、环境变量、时间管理、用户信息和日志信息对于编写系统级别的程序至关重要。例如,进程状态包括运行、就绪、阻塞等,而文件处理涉及打开、关闭、读取和写入文件。 ...
这涉及到事件驱动编程模型,其中事件(在这里是时间到达)触发处理函数。 3. **用户界面设计**:为了呈现日程和提醒,软件需要一个直观的用户界面,让用户可以方便地添加、编辑和查看日程。这可能包括日期选择器、...
备忘单 :memo:基础和常用基础知识点symfony对Twig的扩展控制器中的快捷方法文件处理的帮助器Json响应及参数设置流响应 Twig相关嫩枝基础Twig扩展示例Twig来自相关的函数与变量Twig函数用法示例控制树枝标签使用示例...
3. 函数:定义函数使用def关键字,可以有默认参数和可变参数。return语句用于返回函数结果。 4. 模块和包:Python通过import导入模块,使用from...import选择性导入。pip工具用于安装和管理外部库。 5. 错误与异常...
备忘单可能涵盖控件使用、事件处理、窗体设计等。 - **Pentesting**: 也就是渗透测试,备忘单可能包括漏洞扫描、入侵检测、社会工程学等安全测试技术。 6. **颜色和安全**: - **颜色**:可能涉及HTML/CSS颜色...
1. **编程语言备忘单**:例如Python、Java、C++等,可能包括语法速查、常用函数、编程模式等。 2. **Web开发**:HTML、CSS、JavaScript的基本语法和框架如React、Vue、Angular的相关知识。 3. **数据库管理**:SQL...
Android是一种基于Linux内核的开源操作系统,主要应用于移动设备,如智能手机和平板电脑。开发者通常使用Java语言和Android Studio进行应用程序的开发。在这个项目中,虽然描述中提到的是Java和Eclipse,但鉴于...
1. **编程语言备忘单**:如Python、Java、C++等,包括基本语法、常用函数、错误处理等。 2. **操作系统备忘单**:如Linux,可能包含常用的终端命令、系统管理、文件操作等内容。 3. **数据库备忘单**:SQL基础查询...