Hallo,
int werte[254];
Hat 254 Plätze, es sollten aber 255 sein!
In werte[255] steht ein Zufallswert.
Also
int werte[255];
Angesprochen wird das Array dann mit werte[0] bis werte[254]
Beim ersten Aufruf von durchschnitt() steht in summe auch ein Zufallswert.
Tipp:Variante:Code:#define BUFFER_SIZE 255 int werte[BUFFER_SIZE]; for (j=0; j < BUFFER_SIZE; j++) { // mach was }Das passt dann immer, auch wenn du die Array-Grösse mal ändern willstCode:int werte[255]; #define BUFFER_SIZE (sizeof(werte) / sizeof(werte[0]) ) // sizeof(werte) liefert den Speicherplatz für das ganze Array in Bytes // sizeof(werte[0]) liefert den Speicherplatz für ein einzelnes Array-Element in Bytes // Die Klammer um den ganzen Ausdruck ist prinzipiell nicht nötig, kann aber schwer zu findende Bugs verhindern. // z.B. // #define BUFFER_SIZE sizeof(werte) / sizeof(werte[0]) // ++BUFFER_SIZE // würde der Compiler nach // (sizeof(werte)+1) / sizeof(werte[0]) // auflösen und eben nicht nach // (sizeof(werte) / sizeof(werte[0]))+1
MfG Peter(TOO)







Zitieren

Lesezeichen