使用clock函式實現跨平台的精確計時

2022-03-11 22:55:30 字數 450 閱讀 4600

在用 cocos2d-x的過程中,想計算時間差,比如touchbegin與touchend的點選時間差的時候,需要獲得當前的時間,這個時候一般用的是time(null)來獲得,返回的單位是time_t 在ios平台上看了下,也就是long,也就是從2023年1月1日開始的秒數。但是這個時間不是很精確,只能精確到秒。

如果要經常到毫秒,或者微秒,我們可以使用c函式:

clock_t

clock(void),

函式返回乙個clock_t  型別,其實也是個long,然後怎麼知道這個返回值的表示多少時間呢?

這裡有個巨集,clocks_per_sec 明顯就是

一秒鐘有多少clocks的意思,我們獲取clocks後除以這個巨集就可以得到以秒為單位的時間了,**如下:

float  curtimesec =  (float) click()/(float) clocks_per_sec ;

C 實現跨平台

要建立乙個c 跨平台的應用,亦難也易。難在什麼?所謂應用,自是實際應用,牽涉面很廣。一般來說,至少有如下幾個方面需要我們考慮 0.語言及基礎庫 1.作業系統相關的 2.網路 3.資料庫 4.介面 其它自然還有很多,如xml,加解密等等,這裡先討論前面列出的幾項。眾所周知,不同的作業系統即時是相同的函...

clock函式 使用以及問題

使用 clock 函式是乙個計算程式執行時間 其實簡略的理解為占用cpu的使用時間 其實如果使用sleep函式,程式是放棄cpu的使用權,直到某個時間的到來,當然就不會存在占用cpu時間的時候,即使是乙個計數的迴圈,對於cpu來說,也是微不足道的。計數單位 clocks per sec,clock函...

react Native如何實現跨平台

react native如何實現跨平台 react native是通過虛擬dom實現跨平台,執行時 將虛擬dom轉換為相應的web編碼 android編號 ios編碼進行執行的。實現 01.html 01.js react 元件化 元件的重用 自定義元件 class childtext extend...