* Ferdinand Ihringer
On Wednesday 13 October 2004 17:20, Bernhard Walle wrote:
* Ferdinand Ihringer
[2004-10-12 23:35]: Zu den uninitialisierten Variablen: Also wenn ich uninitialisierte Variablen bei mir abfrage, kommt zumindest kurz hintereinander per Hand immer der selbe Wert, genauso wie der Speicherplatz der selbe ist. Oder habe ich da etwas missverstanden?
Klar, aber du brauchst ja nur einen Wert (nämlich für srand()). Wenn die Sekunde gleich ist, nimmst du halt noch eine uninitialisierte Varialbe dazu und mulitplizierst das ganze.
Wenn ich das Programm 1000mal starte, brauche ich 1000 Werte. Aber die uninitialisierte Variable bekommt bei mir ziemlich oft den selben Wert zugewiesen bzw. den selben Speicherplatz. Ich könnte aus den 1000 Aufrufen einen Aufruf mit einer internen Schleife für die Wiederholungen machen und dann die seed-Werte 1000mal aufeinander abstimmen oder nur ein srand aufrufen. Dann hätte ich aber dieses Problem sowieso nicht.
Den gleichen Speicherplatz wenn die Programme gleichzeitig laufen? Kannst du mir erklären wie das gehen soll? (Bitte nicht den &variable als "Speicherplatz" rechnen, dein Programm sieht einen anderen Adressraum.) Dass die Werte gleich sind, kann natürlich schon passieren. Ich weiß jetzt nicht, wie die Betriebssysteme das intern handhaben.
Es wäre mir aber lieber, wenn es einen Wert gäbe, der einfach so wahrscheinlich verschieden ist, wie die PID oder die Zeit in Millisekunden. Oder ich nehme eine der beiden anderen Varianten... Oder ich verzichte auf die statistische Erhebung unter Windows...
Auch unter Windows gibt es eine Funktion, die PID herauszufinden. Auch gibt es natürlich unter beiden Plattformen Funktionen, die Zeit genauer als in Sekunden herauszufinden. Ein paar #define's rein und gut ist. Oder eine Bibliothek verwenden, die das kapselt. Oder Cygwin verwenden. Oder ... Gruß, Bernhard -- Das Wichtigste im Leben ist die Wahl des Berufes. Der Zufall entscheidet darüber. -- Blaise Pascal (1623 - 1662)