在用 cocos2d-x的過程中,想計算時間差,比如touchbegin與touchend的點擊時間差的時候,需要獲得當前的時間,這個時候一般用的是time(NULL)來獲得,返回的單位是time_t 在ios平臺上看了下,也就是long,也就是從1970年1月1日開始的秒數。但是這個時間不是很精確,只能精確到秒。
如果要經常到毫秒,或者微秒,我們可以使用C函數:clock_t clock(void),函數返回一個clock_t 類型,其實也是個long,然後怎麼知道這個返回值的表示多少時間呢?
這裏有個宏,CLOCKS_PER_SEC 明顯就是 一秒鐘有多少clocks的意思,我們獲取clocks後除以這個宏就可以得到以秒爲單位的時間了,代碼如下:
float curTimeSec = (float) click()/(float) CLOCKS_PER_SEC ;