2013-06-06 56 views
0

如何將timeval轉換爲time_t?我試圖轉換:如何轉換timeval和time_t?

struct timeval tv; 
time_t tm; 
tm = (time_t)tv; 

這是什麼?

+1

不,那不是。 [將timeval轉換爲時間\ _t](http://stackoverflow.com/questions/9252849/convert-timeval-to-time-t) –

+0

非常感謝。 –

回答

0

的定義(從人的gettimeofday

struct timeval { 
      time_t  tv_sec;  /* seconds */ 
      suseconds_t tv_usec; /* microseconds */ 
}; 

所以你需要做的

tm=tv.tv_sec; 
1

timeval中被定義爲:

struct timeval { 
    time_t  tv_sec; // seconds 
    suseconds_t tv_usec; // and microseconds 
}; 

而且time_t的定義如:

typedef long time_t; 

timeval結構用於指定時間間隔,但time_t用於指定時間(自Epoch起的秒數)。如果你堅持要轉換它,你需要選擇一個timeval的tv_sec:

tm = tv.tv_sec;