seltsame Zuweisung
-
Hi,
ich habe ein für mich äusserst seltsames Problem.
Ich habe folgenden Quellcode copiliert und erhalte auch keinerlei Fehlermeldungen.
(Bei dem kleinen Programm handelt es sich um die Ausgabe des Pascalschen-Dreiecks.)
#include<stdio.h> int iArray[20] = { 0 , 1}; int iPufferArray[20]; int iWiederholungen=0; int main() { printf("1"); for(iWiederholungen =10; iWiederholungen <= 10 ; iWiederholungen++ ); { printf("\n"); for( int j = 0 ; j <= iWiederholungen ; j++ ) { iPufferArray[j+1] = iArray[j] + iArray[j+1]; printf("%d", iPufferArray[j+1]); } for( int i=0 ; i <= 20 ; i++ ) { iArray[i] = iPufferArray[i]; } } return 0; }
mein Problem ist jetzt folgendes:
in der ersten for-Schleife weise ich iWiederholungen eigentlich den Wert 1 zu.
lässt man allerdings den Debugger drüberlaufen so sieht man das iWiederholungen den Wert 11 bekommt.Nehm ich statt 1 einen Wert grösser 11 so funktioniert die Zuweisung auf einmal wieder.
ich arbeitet mit MS Visual C++ 6
PS: habe den Code auch schon unter Linux zum laufen gebracht (mit g++ compiliert), der Fehler ist aber der selbe.am Compiler kanns also nicht liegen oder ???
Bitte um Hilfe.
Uncle Sam
-
hab gerade noch einen Fehler bewerkt:
in der ersten For-Schleife muss natürlich iWiederholungen=1 stehen und nicht 10
-
- ein C/C++ Programmierer zaehlt von 0 bis 9 und nicht von 1 bis 10
und - lass doch den ; nach dem for mal weg
- ein C/C++ Programmierer zaehlt von 0 bis 9 und nicht von 1 bis 10
-
vielen Danke für die schnelle Hilfe.
Hab den Wald vor lauter ...usw.
PS: zu der Zählweise, is nur ein Beispiel wo er halt 10 mal die Berechnung durchführt, da könnte auch 4 oder 200 stehen, müsste aber dann die Arrays anpassen.;)
aber trotztdem Danke.
Tschau Uncle Sam