ERLEDIGT
JA
JA
ANTWORTEN
14
14
ZUGRIFFE
948
948
EMPFEHLEN
-
Hallo

Ich wollte mal ausprobieren, ob ich mit C# z.B. auch einzelne Array-Elemente in Variablen speichern kann! Ich habe aber festgestellt, dass dies nicht möglich ist, da die Variablen nur in den Schleifen gültig sind!
Nun (endlich
) zu meiner Frage:
Wie kann ich jedes einzelne Array-Element in eine Variable speicher?
Falls das nicht funktionier: Wie kann ich denn sonst beispielsweise bei einer mySQL-Abfrage, die empfangenen Daten abrufen?
MfG
-
Die Variablen sind dort gültig, wo du sie definierst. Tust du das in einer Schleife, sind sie nur in einer Schleife gültig. Tust du das innerhalb einer Methode, dann eben nur in der Methode gültig usw.
-
aber wenn ich das, wie in dem Code unten mache, gibts auch eine Fehlermeldung!
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
using System; namespace lernen8 { class MainClass { public static void Main(string[] args) { int[] sArray = new int[10]; int zahl2; for(int i=0; i < sArray.Length; i++) { sArray[i] = i * i; } foreach(int zahl in sArray) { zahl2 = zahl; Console.WriteLine("sArray = {0}",zahl); } Console.WriteLine(zahl2); Console.ReadLine(); } } }
Fehler:Also ist die Variable zahl2 nur in der Schleife deklariert worden, und ausserhalb der Schleife icht ansprechbar, oder?error CS0165: Use of unassigned local variable 'zahl2'
PS: Vielen Dank für Deine Antwort!
MfG
-
21.04.05 10:20 #4
Nein, er schreit, dass zahl2 möglicherweise keinen Wert hat!
Es kann sein, dass die foreach-Schleife nie durchrennt, da das Array auch leer sein könnte, wodurch zahl2 nie einen Wert zugewiesen bekommen würde.
mfg broetchen
P.S.: Das hier wäre die Erklärung des Fehlers, den der Compiler wirft.
-
aber das Array wurde mit Werten gefüllt!
-
Ähm, der Fehler sollte aber eigentlich schon kommen, wenn du dein Projekt kompilieren willst (wenn du Visual Studio nutzt).
Das hat damit zu tun, dass die Variablen initialisiert werden müssen.
Mach halt einfach ein int zahl2 = 0; und die Geschichte hat sich erledigt.
-
dann gibt es keine Möglichkeit, die Elemente eines Array in Variablen zu speichern?
PS: Vielen Dank für die Antwort!
-
Probier es aus, dann siehst du, dass es geht ...
-
Code :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
using System; namespace lernen8 { class MainClass { public static void Main(string[] args) { int[] sArray = new int[10]; int zahl2 = 0; for(int i=0; i < sArray.Length; i++) { sArray[i] = i * i; } foreach(int zahl in sArray) { if(zahl == 4) { zahl2 = zahl; } Console.WriteLine("sArray = {0}",zahl); } Console.WriteLine(zahl2); Console.ReadLine(); } } }
Cool, so funktionierts!
Merke mir: Um ein array-Elemente in einer Variable zu speichern, MUSS die Variable ausserhalb der Schleife definiert und deklariert sein, richtig?
Vielen Dank!
-
Nicht ganz .. wenn der Inhalt in einer Schleife etc. auf gleicher Höhe verwendet werden soll. Dann passts.
-
dann: Um in einer Schleife ein beliebiges Array-Element in einer Variable zu speicher, muss die Variable ausserhalb der Schleife definiert und deklariert werden, richtig?
-
Du kommst langsam dahinter.

Mach dich gleich mal über Gültigkeitsbereiche von Varialblen schlau.
Linkliste C#
Das "Gilileo-Openbook" und der "Guide to C#" bringen dich als Anfänger erstmal weiter.
MfG, cosmoGeändert von Christian Kusmanow (21.04.05 um 15:31 Uhr)
MfG,
Christian
Wer sein Problem definiert, hat es schon halb gelöst!
Bitte markiert eure Themen als erledigt. Sonst macht so ein Forum als Nachschlagewerk keinen Sinn.
The Code Project! - C# Programming | C# / VB.NET Pendants
Regeln + Netiquette
Liebe FIAEs, verlasst euch nicht auf das was in der Berufsschule "vermittelt" wird
und vor allem nicht auf das, was euch die IHK dazu erzählt!
Die haben so viel Ahnung von dem Gewerk, wie der Bundestag vom Haushalt...
-
Um in einer Schleife ein beliebiges Array-Element in einer Variable, die auch ausserhalb der Schleife gültig sein soll, zu speichern, muss die Variable ausserhalb der Schleife definiert und deklariert werden, richtig?
-
21.04.05 16:27 #14
Bingo

Is doch irgendwie logisch, oder!?
-
ja, so Logikgehalt von etwa 75%
Ähnliche Themen
-
Geht das auch kürzer? if-schleifen
Von MClay im Forum Flash PlattformAntworten: 3Letzter Beitrag: 18.06.07, 10:50 -
Warum reagiert xmouse und ymouse auch ausserhalb?
Von beckersbesters im Forum Flash PlattformAntworten: 1Letzter Beitrag: 29.11.06, 14:22 -
Variablen und Schleifen
Von supersalzi im Forum PHPAntworten: 8Letzter Beitrag: 28.06.05, 01:03 -
Effekt auch ausserhalb des Flash-Films?
Von Zigi im Forum Flash PlattformAntworten: 1Letzter Beitrag: 21.02.05, 20:29 -
CSS auch in Email nutzen?
Von Amr0d im Forum CSSAntworten: 5Letzter Beitrag: 18.10.04, 18:32





Zitieren
Login





