An einem Beispiel-Programm sollen die in der Vorlesung vorgestellten Compiler-Optionen eingeübt und zur Fehlersuche eingesetzt werden.
Dieses Programm ist leider etwas unvollständig und fehlerhaft! Trotzdem läßt es sich übersetzen und tut schon Dinge, die man mit dem C-Compiler optimieren kann.
Probiert es mit und ohne Optimierung aus: gcc -Wall [-O] -o <progname> <prog.c>
Die Laufzeit eines Programms kann man unter UNIX mit dem Befehl time <progname> ermitteln.
#include <stdlib.h>
#include <stdio.h>
int
main(int argc, char * argv[])
{
int mat_a[MAT_SIZE][MAT_SIZE],
mat_b[MAT_SIZE][MAT_SIZE],
mat_c[MAT_SIZE][MAT_SIZE],
i, j, k;
printf("Matrix size: %d\n", MAT_SIZE);
for(k=0;j<MAT_SIZE;k++)
for(i=0;i<MAT_SIZE;i++)
for(j=0;j<MAT_SIZE;j++)
mat_c[i][k] += mat_a[i][j] * mat_b[j][k];
exit(EXIT_SUCCESS);
}
Die Quelle ist auch unter /vol/fcuprak/aufgaben/uebung2.c zu finden.