如何動態的顯示程式執行的時間

2021-07-11 14:15:23 字數 1032 閱讀 1645

假設你在做乙個小軟體,需要動態顯示某個軟體功能執行所花費的時間.就像防毒那樣,上面會有執行時間。動態顯示很簡單,首先想到的就是設定乙個定時器,每隔一秒獲取當前系統的時間,然後和程式剛執行的時間相減就能得出執行時間了。但是這樣就有乙個問題,假如中途你這個程式想要暫停一會,然後繼續,你會發現,顯示的時間突然跳變了,因為在你暫停的那一會,系統的時間是在流逝的,並不會暫停,只是你暫停顯示了而已。而我想要的效果就是你暫停了,再繼續時間還是接著原來的繼續一秒一秒的變化.這裡我介紹一種簡單的方法,當然了精度也只能是1秒,如果需要高精度的朋友請自行google.

方法如下:

新增三個成員變數

uint m_usecond;  //小時,分鐘,秒

uint m_uminute;

uint m_uhour;

並在建構函式中初始化為0

假設現在是你一按下開始按鈕就開始執行時間,按下暫停按鈕就暫停,再按就繼續

所以你要在開始按鈕事件函式中新增如下**:

cstring s;

s.format(text("%u:%u:%u"), m_uhour, m_uminute, m_usecond);

setdlgitemtext(idc_static_time, s);

settimer(1, 1000, null);

在暫停按鈕中新增如下**:

if(m_bpause == false)

else

然後再定時器函式中新增如下**:

if (m_usecond == 59)

else

if (m_uminute == 59)

cstring s;

s.format(text("%u:%u:%u"), m_uhour, m_uminute, ++m_usecond);

setdlgitemtext(idc_static_time, s);

其原理就是通過自定義的時間計數器通過定時器定時累加.

C C 中如何計算程式執行的時間

乙個程式的功能通常有很多種方法來實現,怎麼樣的程式才算得上最優呢?舉個例子,如果實現同乙個功能的兩個程式,乙個一點按鈕就給出執行結果,而另乙個則需要漫長的時間去等待,就像安裝windows xp一樣 呵呵,太誇張了吧 你會去使用哪個程式呢?毋庸置疑,最優程式的第一條法則就是 程式的執行速度要快。那麼...

js顯示動態時間的方法

js顯示動態時間的方法 date物件的方法 date 物件的方法並不是靜態的,但是在使用時卻可以應用於所指定的單獨實體。date 物件的方法簡介 getdate 根據本地時間獲取當前日期 本月的幾號 getday 根據本地時間獲取今天是星期幾 0 sunday,1 monday.getfullyea...

計算程式執行的時間

通常我們在寫程式後常常需要知道某一段 或者這個程式執行了多長時間,這樣有利於我們計算程式的效率,這篇文章講述的就是這個問題。首先,我們需要知道乙個結構 struct timeval 這個結構代表的是時間值,我們利用函式 gettimeofday 可以對其進行填充,其中的第乙個字段代表的是秒,第二個字...