Gast
#971303
Hallo. Dies ist Teil eines Programms für einen AT90USBxxx. Mir ist unerklärlich warum folgendes passiert: unsigned char bla[28]; Ich lasse zufällige Zahlen erzeugen: char zufall1 = (rand() & 0xff); char zufall2 = (rand() & 0xff); char zufall3 = (rand() & 0xff); char zufall4 = (rand() & 0xff); Dann vergebe ich diese 4 Zahlen an zwei stellen im Kode. ... bla[1] = zufall1; bla[2] = zufall2; bla[3] = zufall3; bla[4] = zufall4; ... ... bla[5] = zufall1; bla[6] = zufall2; bla[7] = zufall3; bla[8] = zufall4; ... Doch dann ist bla[1] != bla[5], bla[2] != bla[6], usw... ?! Wenn ich gar folgendes mache: bla[0] = zufall1; bla[1] = zufall1; bla[2] = zufall1; bla[3] = zufall1; bla[4] = zufall1; bla[5] = zufall1; bla[6] = zufall1; bla[7] = zufall1; bla[8] = zufall1; bla[9] = zufall1; dann steht in jedem Feld bla[0] bis bla[9] eine andere Zahl! Ich habe keine Ahnung wieso das so ist. Der Wert einer Variablen kann sich doch nicht bei jeder Zuweisung von selbst ändern. Vielleicht habt ihr eine Idee warum das so ist. Viele Grüße, Matthias