#include <stdio.h>
#include <sys/time.h>
int main()
{
float time;
struct timeval tv;
gettimeofday(&tv, NULL);
time = tv.tv_sec + (tv.tv_usec/1000000.0);
printf("time: %f\n", time);
return 0;
}
運行二進制這段代碼重複產生,我往往會得到相同的時間值:時間沒有更新,因爲它應該
$ ./a.out
time: 1348059520.000000
$ ./a.out
time: 1348059520.000000
$ ./a.out
time: 1348059520.000000
出現這種情況,直到幾秒鐘後,在我獲得更新時間價值。
'int main()'是未定義的行爲。這是C,其中'()'與'(void)'不一樣。 – Jens