找回密码
 注册
关于网站域名变更的通知
查看: 488|回复: 2
打印 上一主题 下一主题

Linux C高级编程 时间编程

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-8-13 10:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

4 x$ X! w3 ~& p4 T
Linux高级编程——时间编程
  [. I2 U6 G0 Q$ z

* H# T9 K" e; l! X9 o7 W: n
8 V- q3 S% X- k& L3 K# Q
1 时间类型, W" ^" I: a4 T: F
( D3 |: {2 ^- A5 U1 o/ j

- s2 }4 _3 g9 _8 U) U/ Q* b(1) 世界标准世界(格林威治时间)
- N2 {! Z6 ~2 s2 m( d2 r: K' Y5 ^- [: d% Q7 A' F7 p
, G$ c* `, Z+ `; j$ Z
(2) 日历时间(1970年1月1日0时)——到此时经历的秒数
5 ]- M5 ]" {6 e, s, Q  L! ~, _( @
: E2 Z& ?$ j, d: _. N2 ]6 x: ]

$ Z, Z: f7 i) A* j! |
/ @- p3 ?( t# O. _% c
2 时间获取' c9 t$ j1 M' ]1 |6 n" X
( H, U; @- n# |3 Z
6 j3 K( v# ]7 E, n
#include<time.h>
3 m, r& M3 X1 D) ~4 t6 S# D/ e  Q
% O6 q, H$ r" x8 L" g
, B8 l  v% c2 e0 f
time_ttime(time_t *tloc)——获取日历时间0 k; r1 {( l! @& p
3 \! B/ a5 B  x7 j* ~* L
4 d. Z( R" K4 `$ h: W& J% ~' _
/*typedef longtime_t*// x5 o9 ^. t! v6 N! z

$ Q5 U& ^  a. G! v; X7 t
! H. Z) u, q/ V; a+ d+ Z
! D- H( `9 Q6 t, R0 ?( x3 t
( V/ ?: Q. ^" a* P9 d. n6 W0 `
3 时间转化, g4 j' U$ w1 e0 ^

# P' D$ R( W2 X9 u
% |' v" g+ _  A1 L; K
struct tm*gmtime(const time_t *timep)
' C( N0 g* I! i+ A7 Y* c' y% j8 N6 P. S) R4 T
3 `# V: _2 L) h. O  ~" ]
——将日历时间转化为格林威治标准时间,并保存至TM结构中
4 C& ~7 d6 w, o# _1 C( k. {* L; n
2 P' k9 C5 a' ^, y
6 b& g( P  Y! K( [* Z( C
struct tm*localtime(const time_t *timep)
4 U) m) F5 J/ h+ c, ^# @: V: {& u9 g& a/ P$ y
; L- {, @& F- z* T8 o: [% h. L! k* f0 {
——将日历时间转化为本地时间,并保存至TM结构中) F+ J( `3 n. x

5 h- H1 m" r( L) r
/ F# v3 F9 i7 t# `  P) Y
+ M6 w$ ?$ E/ Y8 p" C) q  r2 [

# u- c' r' O! g7 |$ X( V4 时间保存1 T# t0 W- n' e' s
- Y; n8 Q8 N2 {' G

' `/ o  V2 ?5 E9 b0 |( o1 [
  • struct tm
  • {
  •   int tm_sec;//秒值
  •   int tm_min;//分钟值
  •   int tm_hour;//小时值
  •   int tm_mday;//本月第几日
  •   int tm_mon;//本年第几月
  •   int tm_year;//tm_year+1990=哪一年
  •   int tm_wday;//本周第几日
  •   int tm_yday;//本年第几日
  •   int tm_isdst;//日光节约时间
  • };5 _; O1 P* V* {& v) ]

8 ~. d$ w" U( W4 p( W9 B4 V
1 K! R3 Z' ~& T7 ]# U# J
4 ?9 B/ N# @/ _1 M3 `
. d9 b2 S! l4 m0 {( R& ^. ^" q

3 u) h: w! l- ^% H/ J  O% H4 Y5 时间显示: L: [. s$ D4 T

( F" [7 O3 a% [
  ?9 S: n! J- a
char *asctime(conststruct tm* tm)
' [+ `' F; G  |6 {1 Q, M1 z. B" {$ z! G, Q

% m* m  r9 n2 v——将tm格式的时间转化为字符串
3 j' w* G9 h* e: ~  P! q) Y# y( C3 W! H& K1 a

% {; m2 W. @( ]/ d% _1 X- M$ f% kchar*ctime(const time_t *timep)5 }4 ]1 w: v$ c) {" Y- J: n
9 q' }8 H. R% ~

7 i8 o- P! m/ n) h1 R6 c  J2 Y( V; v——将日历时间转化为字符串, Y, y& Z+ W7 R! Y

  F& N& |; b# n0 {# X3 Y. d

# p( V# y8 }2 [* h9 M/ {3 E   R( k# b6 Y3 @3 r) K( d9 ?$ J

' H7 b/ R9 f) |! Z$ K

1 y5 v/ I$ B! [+ u*Linux下显示系统时间实例: ( Z0 l( {, l4 c, v- Z' [

' u4 b) @4 D& s+ a' }
# I- I0 a  D: A
  • #include <time.h>
  • #include <stdio.h>
  • int main(void)
  • {
  •     struct tm *ptr;
  •     time_t lt;
  •     /*获取日历时间*/
  •     lt=time(NULL);
  •     /*转化为格林威治时间*/
  •     ptr=gmtime(lt);
  •     /*以格林威治时间的字符串方式打印*/
  •     printf(asctime(ptr));
  •     /*以本地时间的字符串方式打印*/
  •     printf(ctime(lt));
  •     return 0;
  • }
    ' t0 C  E6 v( x1 a) ]2 _

. f+ X2 h, r. s1 c& Q) k7 l9 u6 U$ P9 c, S3 f3 r

# I0 d/ b$ e9 I! w+ Q( X/ x5 x0 R( n9 l. `: g
& W. v% P$ y& F, r6 I

0 U1 d: `& y3 a8 a
* T$ d" Y" _! S% B% s8 T

该用户从未签到

3#
发表于 2022-3-29 16:29 | 只看该作者
呱呱呱,看的云里雾里

“来自电巢APP”

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-23 22:07 , Processed in 0.140625 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表