Hi
habe heute mal mit c# angefangen und wollte mir einen kleinen rechner machen.
hier mal ein kleiner ausschnitt^^
[cs]String[] values = richTextBox1.Text.Split( '+', '-', '*', '/');
for (int i = 0; i < values.Length; i++)
{
int[] number = Convert.ToInt32(values[i]);
}[/cs]
hier sagt er mir jetzt allerdings, dass eine implizite konvertierung vom typ "int" in "int[]" nicht möglich ist?!
hab es auch schon mit Int32.Parse() versucht, klappt aber auch nicht.
wäre nett wenn mir jemand helfen könnte
MfG
String einer RichTextBox zu Int
-
- [C#]
- user000user
- Geschlossen
-
-
-
int[] number = Convert.ToInt32(values[i]);
Das rote wegnehmen, int[] ist ein array und kann nicht aus einem normalen int konvertiert werden.
Btw: Es funktionieren keine BB-Farbcodes in einem BB-C#-Quelltext
-
Du musst das int Array vor der Schleife deklarieren.
also praktisch int[] myNumbers = new int[values.length] zum erstellen
und dann kannst du mit myNumbers[i] auf die einzelnen Elemente zugreifen -
-
int[] number = Convert.ToInt32(values[i]);
Das rote wegnehmen, int[] ist ein array und kann nicht aus einem normalen int konvertiert werden.
Btw: Es funktionieren keine BB-Farbcodes in einem BB-C#-Quelltext
wenn ich das jetzt so mache, dann weiß ich aber nicht, wie ich dann z.B. zwei zahlen addieren soll
also bei beispielsweise:
[cs]int x = number[0] + number[1][/cs]
da kommt dann der fehler, dass die indizierung mit [] nicht auf ein int angewandt werden kann.
Du musst das int Array vor der Schleife deklarieren.also praktisch int[] myNumbers = new int[values.length] zum erstellen
und dann kannst du mit myNumbers auf die einzelnen Elemente zugreifen
wenn ich das direkt vor die schleife setze, dann kommt immer noch der fehler, dass eine konvertierung vom typ "int" in "int[]" nicht möglich ist^^ -
Ah ok dann hatte ich das falsch verstanden.
[cs]String[] values = richTextBox1.Text.Split( '+', '-', '*', '/');
int[] number = new int[values.Length];
for (int i = 0; i < values.Length; i++)
{
number[i] = Convert.ToInt32(values[i]);
}[/cs]wie dongdong schon gesagt hat, deklarierst du das int[] vor der schleife und weist dann am index i den wert zu. Das int[] hat die länge das string[].
-
Du musst das int Array vor der Schleife deklarieren.
also praktisch int[] myNumbers = new int[values.length] zum erstellen
und dann kannst du mit myNumbers[i] auf die einzelnen Elemente zugreifenAh ok dann hatte ich das falsch verstanden.
[cs]String[] values = richTextBox1.Text.Split( '+', '-', '*', '/');
int[] number = new int[values.Length];
for (int i = 0; i < values.Length; i++)
{
number[i] = Convert.ToInt32(values[i]);
}[/cs]wie dongdong schon gesagt hat, deklarierst du das int[] vor der schleife und weist dann am index i den wert zu. Das int[] hat die länge das string[].
ah danke euch, jetzt funktionierts
kann glaube ich erst mal closed^^ -
-
~closed~