Ich studiere dieses Codebeispiel:Wie funktioniert die Anweisung in diesem Beispiel?
class Program
{
static void Main(string[] args)
{
int x = 10;
int y = 10;
int generate=0;
string [,] myArrayTable = new string[x, y];
Console.WriteLine("Enter a seek number: ");
string cautat = Console.ReadLine();
for (int i = 0; i < x; i++)
{
for(int j = 0;j < y; j++)
{
myArrayTable[i, j] = (generate++).ToString();
}
}
for(int i=0;i<x;i++)
{
for(int j=0;j<y;j++)
{
if(cautat.Equals(myArrayTable[i,j]))
{
goto Found;
}
}
}
goto NotFound;
Found:
Console.WriteLine("Numarul a fost gasit");
NotFound:
Console.WriteLine("Numarul nu a fost gasit !");
Console.ReadKey();
}
}
Ich verstehe nicht, warum die „nicht gefunden“ Anweisung aufgerufen und die entsprechende Meldung Druck auf Konsole, wenn ich eine Such Zahl wie 10, in diesem Fall gehe eingeben: Gefundene Anweisung wird ausgeführt, also wird goto: NotFound-Anweisung niemals aufgerufen, aber trotzdem wird die entsprechende Nachricht auf der Konsole ausgegeben, ich verstehe nicht, wie in diesem Fall das Programm niemals auf diese "NotFound" -Etikette springt.
Bitte, wenn Sie mir jetzt eine Hand darüber ...
Dank
Groß Beispiel 'goto' Missbrauch – Andrey
Sie wirklich diese Umstrukturierung sollte nicht gehe trotzdem zu verwenden. Es wird im Allgemeinen nicht als gute Übung angesehen, so dass Sie bei der Code-Überprüfung eine Menge Kopfschütteln erleiden werden, und es ist in der Regel nicht zu halten. Um ehrlich zu sein, gibt es einen unverwechselbaren Code-Geruch. – Cruachan