我是C#的初学者,当我创建一个名为“ X”的程序时,出现了一个错误消息“在goto语句范围内没有这样的'名字'”你们可以帮我吗,我非常困惑我希望这是我实际发布的第二个程序,第一个是一个愚蠢的小计算器,谢谢您,再见。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Password
{
class Program
{
static void Main(string[] args)
{
Start:
Console.WriteLine("Hello Welcome to X, The application with options because why not");
Console.WriteLine("Whats The password?");
string Pass = Convert.ToString(Console.ReadLine());
if (Pass == "80085")
{
Console.ReadLine();
Console.WriteLine("W-What the heck T-That command overrided
mmy... Welcome to X, Shawn");
Console.WriteLine("Press a key to countinue, Shawn");
Console.ReadLine();
Console.Clear();
Console.WriteLine("Please choose a options for X");
Console.WriteLine("Press a key to countinue, Shawn");
Console.ReadLine();
Commands:
Console.WriteLine("IF you dont know how to use this, \njust type Credits for credits \nGTS to go back to the start \nExit to well exit\n And Help for well help");
}
else
{
Console.WriteLine("Incorrect, Please use a vaild password");
Console.WriteLine("Press a key to Clear and go back to start");
Console.ReadLine();
Console.Clear();
goto Start;
}
string Cho = Convert.ToString(Console.ReadLine());
if (Cho == "Credits")
{
Console.WriteLine("Credits:\n Shawn");
Console.WriteLine("Press a key to Clear and go back to commands");
Console.ReadLine();
Console.Clear();
goto Commands;
}
}
}
}
答案 0 :(得分:0)
您的enum Type
{
NONE = 0;
A = 1;
B = 2;
C = 3;
}
标签是在IF块内定义的,因此在该块之外无法访问。此外,请尝试避免在C#程序中使用Commands
。
答案 1 :(得分:0)
您的问题首先是范围。
但是我认为真正的问题和真正的答案是不要使用goto
。
在现代语言中使用它的理由很少,它使您的代码在视觉上难以预测,而且我记得的地方很少,它使您的方法更具可读性。
有一些例外情况,我们可以辩论直到奶牛回家,但是它们都不能代表您想要做的事情。
while
continue
If