2016-07-29 3 views
1

가능한 한 최소량의 헤더 파일을 사용하여 시간을 계산할 수 있기를 원합니다. 그래서 나는 경우도 모르겠습니다의 <time.h> 헤더의 내부 모습과 내가 가지 어떤 extern 방법을 이해C가 시간을 측정하는 방법 <time.h>

extern time_t time (time_t *__timer) __THROW; 

와 시간 함수를 발견하지만,이 함수의 내용이 어디 어디서든 찾을 수 없습니다 그런 것이있다.

time 함수는 어떻게 수행해야하는지 알 수 있으며 어디에서 찾을 수 있습니까?

+0

어딘가 표준 라이브러리에 있습니다. – immibis

+0

'time'은 표준 C 라이브러리의 일부입니다. 플랫폼 세부 정보가 무엇인지 모릅니다. [glibc] (https://www.gnu.org/software/libc/)는 Linux 용 공통 라이브러리입니다. – kaylum

+0

보통 시스템에 소스를 포함시킬 필요가 없도록 바이너리 libs로 사전 컴파일됩니다. 예를 들어 Ubuntu x64의 libc.so에서'objdump -TC /lib/x86_64-linux-gnu/libc-2.19.so | grep "\ "'. – neuront

답변

0

time.h는 C 표준 라이브러리의 헤더입니다.

시스템의 C 라이브러리 구현에서 찾을 수 있습니다. This은 glibc에서 posix 구현입니다.

+0

링크 된 소스 코드는 스텁입니다. 실제로 읽었습니까? –

+0

링크를 확인했지만 함수가 항상 "-1"매개 변수를 반환하거나 설정하는 것처럼 보입니다. –

+0

그는 내가 확인하지 않은 것이 맞습니다. 찾으려는 구현은 [sysdeps] (https://sourceware.org/git/?p=glibc.git;a=tree;f=sysdeps;hb=HEAD)에 있습니다. – aebudak

관련 문제