2016-07-29 55 views
1

我想盡可能使用最少量的頭文件來計算時間。所以,我看着裏面的<time.h>頭,發現時間的功能,C如何測量時間<time.h>

extern time_t time (time_t *__timer) __THROW; 

我有點明白什麼extern手段,但我找不到任何地方哪裏該函數的身體,我沒有,如果連確定有這樣的事情。

那麼這time功能如何知道該怎麼做,我在哪裏可以找到它?

+0

它在某處的標準庫中。 – immibis

+0

「時間」是標準C庫的一部分。不知道你的平臺細節是什麼。 [glibc](https://www.gnu.org/software/libc/)是Linux的通用庫。 – kaylum

+0

通常預編譯爲二進制庫,因此不需要將源代碼包含在系統中。例如,你可以通過'objdump -TC /lib/x86_64-linux-gnu/libc-2.19.so |在Ubuntu x64的libc.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