maxxle
09-12-2004, 13:10
Ich versuche die Zeit eines Algorithmus auf einem Linux-System zu messen.
Hier das Programm:
#include <stdio.h>
#include <time.h>
int main() {
clock_t starttime, stoptime, difftime;
starttime = clock();
// Use time
int i=0;
int k=0;
for(i;i<9000000;i++) {
k+=i;
}
sleep(2);
stoptime = clock();
difftime = stoptime - starttime;
printf("Starttime: %10.6f\n", starttime/CLOCKS_PER_SEC);
printf("Stoptime: %10.6f\n", stoptime/CLOCKS_PER_SEC);
printf("Time: %8.31f\n" ,(difftime/CLOCKS_PER_SEC));
return 0;
}
Und hier die Ausgabe nach dem Compilieren:
Starttime: -1.999352
Stoptime: -1.999352
Time: -1.9993515014648437500000000000000
Habe auch schon andere Parameter für printf() mitgegeben, funktioniert aber auch nicht.
Ist nur was bei der Ausgabe falsch formatiert oder warum bekomme ich so seltsame Werte?
Hier das Programm:
#include <stdio.h>
#include <time.h>
int main() {
clock_t starttime, stoptime, difftime;
starttime = clock();
// Use time
int i=0;
int k=0;
for(i;i<9000000;i++) {
k+=i;
}
sleep(2);
stoptime = clock();
difftime = stoptime - starttime;
printf("Starttime: %10.6f\n", starttime/CLOCKS_PER_SEC);
printf("Stoptime: %10.6f\n", stoptime/CLOCKS_PER_SEC);
printf("Time: %8.31f\n" ,(difftime/CLOCKS_PER_SEC));
return 0;
}
Und hier die Ausgabe nach dem Compilieren:
Starttime: -1.999352
Stoptime: -1.999352
Time: -1.9993515014648437500000000000000
Habe auch schon andere Parameter für printf() mitgegeben, funktioniert aber auch nicht.
Ist nur was bei der Ausgabe falsch formatiert oder warum bekomme ich so seltsame Werte?