計算程式執行時間(acm用)

2021-07-24 19:55:34 字數 1069 閱讀 5646

一些傳統的編譯器,在編譯時就會給出基本的程式跑的時間,有的ide甚至每次跑都會給出時間(如vc6.0)非常方便。但現在一些環境(如vs)就沒有這個功能了,對一些追求執行時間的acmer們很不方便,這裡記錄幾種方式自己進行處理。

#include

#include

int main()

dword end_time=gettickcount();

cout

<<"the run time is:"

<<(end_time-start_time)<<"ms!"

return

0;}

#include

#include

int main()

clock_t end_time=clock();

cout

<< "running time is: "

<(end_time-start_time)/clocks_per_sec*1000

<<"ms"

return

0;}

#include

using

namespace

std;

int main()

for(int i= 0; i<100000; i++ )

} //獲取**結束時cpu內部計數器的值,並減去初值

__asm

//把兩個計數器值之差放在乙個64位的整形變數中

//先把高32位左移32位放在64的整形變數中,然後再加上低32位

__int64 timer =(numhigh<<32) + numlow;

//輸出**段執行的時鐘週期數

//以頻率1.1gcpu為例,如果換計算機把其中的1.1改乘其它即可,因為相信大家的cpu都應該在1g以上 ^_^

cout

<< (double) (timer /1.1/1000000000) << endl;

return

0;

}

計算程式執行時間

在長時間計算程式執行時間時,可以使用clock函式。clock比較通用,精度並不是特別的高,大約是10ms。但是對於長時間的計算的話,還是可以使用的。以下是一段示例程式,將幫助你理解 include stdio.h include memory.h include time.h define siz...

程式執行時間計算

int sum int n 分析 宣告不計時間,第一句,第四句各占用乙個時間單位。第三句每執行一次占用四個時間單位,兩次乘法,一次加法,一次賦值。而執行n次共占用4n個時間單位。第二行初始化i,乙個時間單位 測試i n,n 1個時間單位 i n個時間單位 總共2n 2。忽略呼叫,返回值的開銷,以上總...

計算程式執行時間

在編寫完程式後,通常都會對程式進行效能測試,比較常用的方法就是計算完成某個任務所花費的時間。system類提供了獲得當前時間的方法,但是其單位是毫秒,閱讀不方便。本例項將其轉換成方便的閱讀格式。例項執行效果如圖 system類包含一些有用的類字段和方法,它不能被例項化。在 system 類提供的設施...