2010-11-16 124 views

Trả lời

17
#include <time.h> 

time_t seconds_past_epoch = time(0); 

Có sẵn trên hầu hết các hệ điều hành.

+2

Thời gian từ thời đại, không phải thời gian kể từ 1/1/1970. – MSalters

+0

@MSalters là kỷ nguyên ... – tkbx

+0

@tkbx: Đó là kỷ nguyên _UNIX_, hiện cũng được sử dụng trên Windows. Các hệ thống nhúng khác nhau. – MSalters

5
thời gian

time_t (void) thời gian time_t (time_t * ptr)

bao gồm: time.h

Trả về số giây đã trôi qua kể từ nửa đêm, 01 Tháng 1 1970 GMT (hoặc chiều, 31 Tháng 12 năm 1969 EST). Nếu tham số không phải là NULL, giá trị tương tự được lưu trữ ở vị trí được trỏ tới. Theo liên kết này để biết thông tin về loại time_t. Giá trị trả lại có thể được sử dụng như một thước đo đáng tin cậy của thời gian trôi qua, và có thể được chuyển tới ctime() hoặc chuyển đổi thành một chuỗi có thể đọc được.

Ví dụ:

time_t t1=time(NULL); 
do_something_long(); 
time_t t2=time(NULL); 
printf("%d seconds elapsed\n", t2-t1); 

giá trị time_t được sản xuất từ ​​đồng hồ theo thời gian. giá trị time_t được tạo ra từ các phần y, m, d, h, m, s theo mktime và timegm. giá trị time_t được phân tích thành y, m, d, h, m, s theo giờ địa phương và gmtime. giá trị time_t được chuyển đổi thành chuỗi có thể đọc được bằng ctime.

+0

sẽ chỉ trở lại tính bằng giây trên hệ thống POSIX .. – Daniel

2

Xem man mktime:

#include <time.h> 

time_t secsSinceEpoch = mktime(localtime(NULL)); 
Các vấn đề liên quan