Universität Bielefeld - Technische Fakultät

Aufgabe 2


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.


Dirk Evers, 1997-04-17