当前位置:  技术问答>linux和unix

linux如何比对两个时间差

    来源: 互联网  发布时间:2016-05-16

    本文导语:  时间一: Thu Feb  5 13:12:18 EST 2009 时间二: Fri Feb  6 13:11:18 EST 2009 如何计算时间差(结果为小时数) | #include  #include  int main () {   struct tm tm, tm2;   char buf[255];   time_t t1, t2;   strptime ("Thu Feb...

时间一:
Thu Feb  5 13:12:18 EST 2009
时间二:
Fri Feb  6 13:11:18 EST 2009

如何计算时间差(结果为小时数)

|
#include 
#include 

int
main ()
{
  struct tm tm, tm2;
  char buf[255];
  time_t t1, t2;

  strptime ("Thu Feb 5 13:12:18 EST 2009", "%a %b %d %H:%M:%S EST %Y", &tm);
  strptime ("Fri Feb 6 13:11:18 EST 2009", "%a %b %d %H:%M:%S EST %Y", &tm2);

  t1 = mktime(&tm);
  t2 = mktime(&tm2);
  printf("TIME: %ld, %ld, %ldn", t2, t1, t2-t1);
  return 0;
}

|
man一下就知道了

|

|
mktime
[convert time to arithmetic representation]
SYNOPSIS #include 
time_t mktime(struct tm *timp);
DESCRIPTION mktime assumes the time at timp is a local time, and converts its
representation from the traditional representation defined by struct tm into a
representation suitable for arithmetic.
localtime is the inverse of mktime.
RETURNS If the contents of the structure at timp do not form a valid calendar time
representation, the result is -1. Otherwise, the result is the time, converted to a
time_t value.
COMPLIANCE ANSI C requires mktime.
mktime requires no supporting OS subroutines.



strftime
[flexible calendar time formatter]
SYNOPSIS #include 
size_t strftime(char *s, size_t maxsize,
const char *format, const struct tm *timp);
DESCRIPTION strftime converts a struct tm representation of the time (at timp) into a
string, starting at s and occupying no more than maxsize characters.
You control the format of the output using the string at format. *format can
contain two kinds of specifications: text to be copied literally into the
formatted string, and time conversion specifications.
Time conversion specifications are two-character sequences beginning with %
(use %% to include a percent sign in the output). Each defined conversion
specification selects a field of calendar time data from *timp, and converts it
to a string; see Table 8: “Time conversion character sequences” on page 158
for more details of the character sequences for conversion.
Mon Apr 01 13:13:13 1992
Table 8: Time conversion character sequences
%a An abbreviation for the day of the week.
%A The full name for the day of the week.
%b An abbreviation for the month name.
%B The full name of the month.
%c A string representing the complete date and time, as in the following
example:
Table 9: Representations of time
%d The day of the month, formatted with two digits.
%H The hour (on a 24-hour clock), formatted with two digits.
%I The hour (on a 12-hour clock), formatted with two digits.
%j The count of days in the year, formatted with three digits (from 001
to 366).
%m The month number, formatted with two digits.
%M The minute, formatted with two digits.
%p Either AM or PM as appropriate.
%S The second, formatted with two digits

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 在windows中的VMware装了个linux,主板有两个串口,能做windows和linux的串口通信测试么,怎么测试这两个串口在linux是有效
  • 我机器上安装了linux和win2000两个系统,请问如何在两个系统之间切换。
  • linux字符模式下怎样可以运行两个任务(开两个终端)
  • 谁有linux?帮我用在linux运行两个文件好吗?
  • 在win分区上安装linux和独立分区安装linux有什么区别?可以同时安装吗?(两个linux系统)
  • linux里面有 klogd与syslogd两个命令吗
  • 怎样让linux8.0认两个cpu
  • 分别有两个linux系统的两个硬盘接在一台机器上,由其中一个硬盘启动,有问题,大家来看看
  • 下面两个linux有什么区别?
  • 如何让vm下的两个linux实现网络连接(主机不联网)
  • linux7可以设置两个网关吗?
  • 急!在LINUX上有什么工具可以测试两个程序的效率
  • 请问 linux与windows两个平台下如何实现高速数据传输?
  • linux 下两个硬盘进行复制,用DD该如何使用????
  • 关于Linux内核里两个头文件irqs.h
  • Linux网络编程(怎样实现两个客户端之间的通信)
  • 红旗Linux如何将图形界面KDE切换成文本控制台界面,两个界面如何互为切换?
  • oracle iis7站长之家
  • 我能在一块硬盘上安装两个Linux吗?
  • 在linux下怎样合并两个文件?
  • linux c/c++ IP字符串转换成可比较大小的数字
  • 在虚拟机上安装的linux上,能像真的linux系统一样开发linux程序么?
  • linux哪个版本好?linux操作系统版本详细介绍及选择方案推荐
  • 我重装window后,把linux的引导区覆盖了,进不了linux怎么办?急啊,望热心的人帮助 (现在有linux的盘)
  • secureCRT下Linux终端汉字乱码解决方法
  • 安装vmware软件,不用再安装linux系统,就可以模拟linux系统了,然后可以在其上学习一下LINUX下的基本操作 了?
  • Linux c字符串中不可打印字符转换成16进制
  • 红旗Linux主机可以通过127.0.0.1访问,但如何是连网的Win2000机器通过Linux的IP去访问Linux
  • Linux常用命令介绍:更改所属用户群组或档案属性
  • 我重装window后,把linux的引导区覆盖了,进不了linux怎么办?急啊,望热心的人帮助 (现在没有linux的盘,只有DOS启动盘)
  • linux命令大全详细分类介绍及常用linux命令文档手册下载


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3