JAVA和C的运行速度对比
运行环境:
P4 2.0 256M XP SP2
Java 版本:1.6.0_13
C 编译器:lcc 4.0(lcc-win32)
Java Code:
class Test
{
public static void main(String a[]){
long beginTime = System.currentTimeMillis();
System.out.println("begin:"+beginTime);
for(int i=0;i<10000;i++)
{
System.out.print(i+"\t");
}
long endTime = System.currentTimeMillis();
System.out.println("end:"+endTime);
System.out.println("用时:"+(endTime-beginTime));
}
}
C code
#define CLOCK_PER_SEC 1000
#include <stdio.h>
#include <time.h>
#include <windows.h> //for sleep function
void main()
{
int i;
double timedif;
double time1 = (double)clock();
printf("time is: %f seconds.",time1 /(double)CLOCK_PER_SEC);
time1 = time1 / (double)CLOCK_PER_SEC;
//Sleep(1500);
for (i=0;i<10000 ;i++ )
{
printf("%i\t",i);
}
timedif =(((double)clock()) /(double)CLOCK_PER_SEC) -time1;
printf("%f\t",timedif);
getchar();
}
结果:
java
1.250 2.328 0.922 1.391 2.391 2.485 2.796 2.344 2.500 2.500
总时间/10次 = 20.907 / 10 = 2.0907
c
3.047 1.688 2.875 2.719 2.734 2.688 3.000 2.563 2.812 2.781
总时间/10次 = 26.907 / 10 = 2.6907
c比java多用0.6秒
第二次测试
c在lcc-win32外壳下执行对比结果
java
2.266 2.187 2.219 2.187 2.156 2.188 2.234 2.125 2.235 2.140
22.027 / 10=2.2027(平均每次执行)
C
2.392 2.376 2.876 3.454 3.532 3.016 3.376 3.454 3.079 3.579
31.134 / 10=3.1134(平均每次执行秒数)
3.1134-2.2027=0.9107秒
c比java多用了0.9107秒
java占内存大9.706M,c比较小1.404M
在多少次分分秒秒中一个一个程序员由新手变为老手。
时如白驹过隙,失去的东西成为了永远。该珍惜的却又是如此的痛苦,想停留在眼前,但时间不会怜惜世间万物的生命的长度。
向所有的程序员,致敬。辛苦了!