두 입력 시간이 같다고합시다. 시간 1은 2013-10-01-00-00-00
이고 시간 2는 2000-01-01-12-00-00
입니다.리눅스에서 mktime 함수를 사용하는 시간의 차이
나는 위의 두 번을 struct tm
구조로 채 웁니다. mktime
을 사용하고 2 개의 구조를 전달했으며 type time_t
의 두 가지 값을가집니다. 우리는 각각 Time_1과 Time_2입니다. 지금은 TIME_1 및 Time_2의 차이를 가지고가는 경우에
,
- 이는 2 입력 시간 시간-1 및 시간-2 사이의 경과 초 포함되어 있습니까?
- 이 함수는 도약 년에 대해 내부적으로 추가 초를 처리합니까?
- UTC의 관점에서 실제 차이를 얻으려면 윤년 추가/삭제해야합니까?
답장을 보내 주셔서 감사합니다. 그러나 선생님은 posix 시간 함수가 윤년을 처리한다고 주장하는 공식 링크를 게시 할 수 있습니까? – Soumajit
mktime은 현지 시간을 Epoch에서 초 수로 변환합니다. (http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap04.html#tag_04_15). 이를 올바르려면 윤년을 고려해야합니다. 그렇지 않은 경우 에포크 이후 잘못된 시간 (초)을 계산합니다. 분명히 두 개의 "epoch 이후 값"값의 차이는 두 값 사이의 초 수입니다. – rici
고맙습니다. 이제 한 가지 더 의심스러워. 위의 함수에서 초당 분해능이란 무엇입니까? O/S가 초당 수에 어떻게 도달합니까? 시스템이 NTP 서버와 동기화되면 초당 카운트에 영향을 줍니까? – Soumajit