Auf Variable außerhalb der Schleife zu greifen C#?
Hallo,
Mein Problem ist dass ich nicht auf die Variable x außerhalb der Schleife zugreifen kann obwohl sie außerhalb deklariert ist. Kann mir dort jemand weiterhelfen ?
3 Antworten
![](https://images.gutefrage.net/media/default/user/15_nmmslarge.png?v=1551279448000)
Nein, das Problem ist, dass du y einen initialen Wert geben musst, also
int y = 0;
Die Schleife kann aus irgendwelchen Gründen nicht durchlaufen (was der Compiler nicht weis, was auch situationsbedingt Sinn machen könnte), und dann steht in y halt nichts drin.
Dass dein Programm 500 * 10000 Millisekunden, also fast anderthalb Stunden läuft, ist dir sicherlich bewusst?
![](https://images.gutefrage.net/media/default/user/14_nmmslarge.png?v=1551279448000)
![](https://images.gutefrage.net/media/user/CSANecromancer/1569527110921_nmmslarge__0_0_200_200_206c5dc1b471eb79da3f219b3ef382b3.png?v=1569527111000)
Natürlich kannst du drauf zugreifen. Allerdings initialisierst du y nicht. Deswegen schreit der Compiler bei Console.WriteLine(y), dass es möglicherweise sein kann, dass du y verwendest, bevor ihm irgendein Wert zugewiesen wurde.
Exakt das steht auch in der Fehlermeldung und genau deswegen ist das y bei der entsprechenden Zeile rot unterkringelt.
Initialisiere dein y und schon passt der Kram.
![](https://images.gutefrage.net/media/default/user/14_nmmslarge.png?v=1551279448000)
Mach mal public y;
![](https://images.gutefrage.net/media/default/user/14_nmmslarge.png?v=1551279448000)
Das wäre falsch, denn das Schlüsselwort public hat nichts innerhalb von Methoden zu suchen. Selbst wenn, würde es nichts bezwecken, denn darin liegt doch nicht der Fehler.