在Free Pascal的dos单元中,有gettime(h,m,s,se)函数,返回当前系统时间(时,分,秒,百分秒),其中h,m,s,se为word型(0<=h<=23,0<=m<=59,0<=s<=59,0<=se<=99)。利用这个函数我们可以记录核心程序段在运行前后运行后的系统时间,通过求差及单位转化后便可以得到间隔时间,即核心程序段运行的时间。下面给出参考代码:
uses dos;
var
h1,h2,m1,m2,s1,s2,se1,se2:word;
runtime:real;
begin
gettime(h1,m1,s1,se1);
writeln(h1:6,m1:6,s1:6,se1:6);
程序代码……
gettime(h2,m2,s2,se2);
writeln(h2:6,m2:6,s2:6,se2:6);
runtime:=(h2-h1)*3600+(m2-m1)*60+s2-s1+(se2-se1)/100;
writeln(runtime:0:2);
readln;
end.